Commit Graph

6274 Commits

Author SHA1 Message Date
Hung Nguyen 9b71bd5bb4 KT-45777: Address review comments - update tests 2021-09-14 12:10:39 +03:00
Hung Nguyen a48bf63630 KT-45777: Compute classpath changes for incremental Kotlin compile
Test: Updated unit tests + incremental compilation integration tests
2021-09-14 12:10:38 +03:00
Hung Nguyen e3d7b7a30e KT-45777: Refactor incremental compilation integration tests
to organize tested scenarios better and make it easier to see the
effects of the next change when the classpath snapshot feature is
enabled.
2021-09-14 12:10:38 +03:00
Yigit Boyar 95f990adab Support line location information in KAPT for top level declarations
This CL fixes a bug in KAPT's MAP_DIAGNOSTIC_LOCATIONS flag where the
location mapping for top level elements didn't work.

I also needed to changes the Kapt3IntegrationTest to copy input files,
otherwise, it cannot map file paths since the mock project has no root
location.

Cleanup tmp folders in KAPT tests, update Kapt3IT test for new lines.

^KT-47934 Fixed
Test: KotlinKapt3IntegrationTests#testErrorLocationMapping
2021-09-14 10:48:37 +02:00
Yahor Berdnikau ec3a6e7f02 Update java up-to-date test project to plugins api.
^KT-45747 In Progress
2021-09-14 10:42:52 +02:00
Yahor Berdnikau 6ad662dd66 Migrate ClassFileIsRemovedIT test to new test DSL.
Rename ClassFileIsRemovedIT.kt into SourceFileIsModifiedIT.kt.

 ^KT-45747 In Progress
2021-09-14 10:42:52 +02:00
Yahor Berdnikau b71b7abc2b Migrate JavaUpToDateIT test to new test DSL.
^KT-45747 In Progress
2021-09-13 22:50:09 +02:00
Viacheslav Kormushkin 8dd40cb398 KT-MR-4412: Fix CocoaPodsIT tests
#KT-48700
2021-09-13 15:56:34 +00:00
Mikhail Glukhikh fc6403679a Rename !USE_EXPERIMENTAL test directive to !OPT_IN 2021-09-10 16:29:16 +03:00
Mikhail Glukhikh 3febabe977 Use OPT_IN instead of EXPERIMENTAL in diagnostic names 2021-09-10 16:29:13 +03:00
Mikhail Glukhikh ffbd574a08 Use -opt-in instead of -Xopt-in in comments and scripts 2021-09-08 23:43:55 +03:00
sebastian.sellmair 1076654bd9 [Gradle] Shared Native compilations: Don't explicitly add stdlib dependency
Shared Native Compilations seem to already implicitly add a
dependency on the stdlib. Adding it again will result in a
'library included more than once' warning.

^KT-46257 Verification Pending
2021-09-07 14:17:40 +00:00
sebastian.sellmair 8fe176f605 [Gradle] CommonizerHierarchicalIT: Add assertions for ^KT-46257 2021-09-07 14:17:40 +00:00
Philipp Smorygo 6abd3bf589 Fix CocoaPodsIT 2021-09-06 12:32:25 +00:00
Mikhail Glukhikh ed035d99ab Migrate -Xopt-in to -opt-in in Gradle Kotlin scripts 2021-09-03 15:40:47 +03:00
Ilya Goncharov ee1d2ecb4b [Gradle, JS] Delete recursively tmp directory in up-to-date case 2021-09-03 14:10:58 +03:00
Dmitriy Novozhilov d46e2dd749 Fix OVERRIDE_DEPRECATION warnings in project code 2021-09-02 15:04:07 +03:00
nataliya.valtman 862f8cdad8 KT-48264 Create dir before kotlin-build-report publish 2021-09-02 13:49:57 +03:00
sebastian.sellmair 97d71dc160 [Gradle] Ensure enableGranularSourceSetsMetadata property being populated
Previously it was only populated when KGP was applied to the root project.
CLI compilation would still work, since it also checks for the
new hmpp properties, whereas the IDE import is still 'just' checking
on the old property (while defining its own defaults)

^KT-48513 Verification Pending
2021-09-02 09:27:49 +00:00
Sergey Bogolepov 9620279201 [K/N] Fix KT-48552 2021-09-02 06:34:39 +00:00
Ilya Gorbunov 11314a5c4e Rename enabling old behavior property and make it cached in a field
Mention the property name in the note about conversion to set.

#KT-45438
2021-09-02 06:06:39 +03:00
Abduqodiri Qurbonzoda 94b371af5b Remove brittle ‘contains’ optimization in minus/removeAll/retainAll #KT-45438 2021-09-02 05:58:19 +03:00
Abduqodiri Qurbonzoda 0faa83bacb Deprecate JS Array/PrimitiveArray.sort(comparison) functions 2021-09-02 01:38:03 +00:00
Abduqodiri Qurbonzoda 91aa956f34 Introduce JVM readln() and readlnOrNull() top-level functions #KT-48456 2021-09-02 01:00:34 +00:00
Sergey Igushkin 8b37b5f259 Fix localToProject=public not set for K/N configurations, KT-48370 2021-09-01 14:44:33 +00:00
Svyatoslav Scherbina 751914ca4d [Gradle, Native] Make useEmbeddableCompilerJar input of compile tasks
to make the tasks not up-to-date when switching the flag
2021-09-01 13:43:29 +00:00
Svyatoslav Scherbina e65f2e465e [Gradle] Fix switching in-process to Native embeddable compiler jar
Compiler runner used incorrect cache key for isolated classloader:
it didn't take the actually used compiler jar into account,
only the K/N home dir.

Fix this by using the entire classpath as a key.
2021-09-01 13:43:28 +00:00
Svyatoslav Scherbina 1c052ad448 [Gradle, Native] When running tool in-process, log the actual classpath
When running tool in-process, log the actual classpath extracted from
the classloader, not the one that was intended.
This helps to detect the cases when these two don't match.
2021-09-01 13:43:28 +00:00
Svyatoslav Scherbina 71af22dba0 [Gradle] Support Native embeddable compiler jar in subplugins
Apply generic (backend-agnostic) compiler plugin artifact instead of
Native-specific one when Native embeddable compiler jar is used
(with `kotlin.native.useEmbeddableCompilerJar=true` project property).
2021-09-01 13:43:28 +00:00
Svyatoslav Scherbina 0b4dfd58fc [Gradle] Don't apply scripting gradle subplugin to Native compilations
It doesn't support Native anyway, but applying it blocks using
the generic compiler plugin artifact for Native.
2021-09-01 13:43:27 +00:00
Svyatoslav Scherbina 7c52077e40 [Gradle] Rename kotlin.native.[shaded -> useEmbeddableCompilerJar]
Also move it to PropertiesProvider.
2021-09-01 13:43:27 +00:00
Svyatoslav Scherbina f049c4a630 [Gradle, Native, IT] Allow checking compiler classpath 2021-09-01 13:43:26 +00:00
Svyatoslav Scherbina 0fd4884149 [Gradle] Partially revert "enable to work with embedded k/n compiler"
This partially reverts commit 2baf344f5f,
removing support for K/N embeddable compiler jar from subplugins.
More migration-friendly implementation is to be added instead.
2021-09-01 13:43:26 +00:00
Alexander Udalov 473ed2e410 Fix JVM target and language version info in CLI and Gradle 2021-09-01 14:32:53 +02:00
Hung Nguyen a342c81a9f KT-45777: Take snapshots and compute changes for Java classes
Create `JavaClassDescriptor`s for Java classes
Ignore anonymous and synthetic classes
as they can't impact recompilation.
Clean up handling of local and anonymous classes

Bug: KT-45777
Test: New JavaClassDescriptorCreatorTest
2021-09-01 13:29:17 +03:00
Ivan Gavrilovic f0f5e11e72 MPP Gradle - Stop using convention mapping for archive name (#4529)
The "archiveFile" property is deprecated on the jar task, and
archiveFileName is used in this commit. Also, this fixes an
issue in Gradle where convention mapping is incorrectly
deserialized from configuraiton cache.

Original issue: https://issuetracker.google.com/193558867
Test: testJvmWithJavaConfigurationCache
2021-09-01 09:01:52 +03:00
Denis.Zharkov 9e6af52e1f Enable DefinitelyNotNullTypeParameters since 1.7
^KT-26245 In Progress
2021-08-31 15:41:13 +03:00
sebastian.sellmair 5a63498963 [Commonizer] Use qualified name string for 'UnsafeNumber' annotation
^KT-48459
^KT-48455
2021-08-30 19:25:43 +00:00
Alexander Udalov 6c400ce864 Build: update kotlinLanguageVersion to 1.6
Update binary-compatibility-validator dependency to 0.7.1 to allow it to
read Kotlin metadata of version 1.6.

 #KT-48445
2021-08-30 19:36:32 +02:00
Nikolay Krasko eaf31b1ada Update org.jsoup:jsoup to 1.14.2 2021-08-27 20:32:23 +03:00
sebastian.sellmair ae88689e58 [Gradle] Improve NativeDistributionCommonizerTask's cold startup performance
This is done by removing support for Gradle's UP-TO-DATE checker
in favour of our own 'NativeDistributionCommonizationCache'
2021-08-27 12:26:06 +00:00
sebastian.sellmair 8508017dbb [Gradle, MPP] Ensure outputDirectory exists before locking
NativeDistributionCommonizationCache:
The .lock file cannot be locked when parents are missing.

^KT-48427 Verification Pending
2021-08-26 12:18:56 +00:00
sebastian.sellmair ed152e74a0 [Gradle] Add 'CATEGORY_ATTRIBUTE=LIBRARY' attribute to configurations
^KT-36941 Verification Pending

This is necessary to fix:
https://youtrack.jetbrains.com/issue/KTIJ-10769
by preventing confusion with the `samplessources` variant.
2021-08-25 11:35:33 +00:00
Ilya Chernikov e60e80f19a Scripting: improve reporting on cyclic dependency
#KT-48177 fixed
the issue is in fact fixed by the previous commit (report error
on duplicated import) by normalizing import path before processing,
but here we're making error reporting nicer for the case.
2021-08-24 21:39:33 +03:00
Ilya Chernikov c204d7a86f Scripting: report error on duplicate import
#KT-48177 fixed
(due to the path normalization)
2021-08-24 21:39:32 +03:00
nataliya.valtman 260d301100 Report compiler performance data to ES 2021-08-24 16:33:13 +03:00
nataliya.valtman 7357aeb1c9 Add output size to ES metrics 2021-08-24 16:33:12 +03:00
Stanislav Erokhin 9becb2c468 Add compiler performance metrics
WIP
2021-08-24 16:33:12 +03:00
nataliya.valtman 64da19cb2d Add Artifact Transform stat into ES 2021-08-24 16:33:11 +03:00
Sergey Bogolepov e9e986dd61 Adjust CommonizerIT to MinGW cross-compilation 2021-08-24 19:14:56 +07:00