Sergey Igushkin
55eeb0ca8f
Model mapping: apply user-defined attributes in KPM
2022-02-14 15:05:06 +00:00
Sergey Igushkin
51f737056e
KPM: adjust naming to match the MPP plugin
...
Adjust the names of:
* dependency configurations
* elements configurations
* platform JAR tasks
* metadata JAR tasks
All of them omit the module name if it's `main
2022-02-14 15:05:05 +00:00
Sergey Igushkin
3361f015a5
Model mapping: add toString implementation for legacy-mapped variants
2022-02-14 15:05:05 +00:00
Sergey Igushkin
730ba811f6
KPM: filter out duplicates from directRefinesDependencies
2022-02-14 15:05:04 +00:00
Sergey Igushkin
882fd94e59
KPM: don't compile single-platform Native fragments to metadata KLIBs
2022-02-14 15:05:04 +00:00
Sergey Igushkin
52e8f1a32d
KPM: consider implementation dependencies as direct module dependencies
2022-02-14 15:05:04 +00:00
Sergey Igushkin
a58f04e30b
KPM: add module name to directory names in the sources JAR
...
For example, it will now be `common` -> `commonMain`, so that the
behavior emulates the sources JARs built by the stable MPP plugin
2022-02-14 15:05:03 +00:00
Sergey Igushkin
6546ebd248
KPM: In Native variants, expose the implementation dependencies as API
...
This simulates the behavior of the stable plugin which also exposes the
implementation dependencies in the Native targets.
2022-02-14 15:05:03 +00:00
Sergey Igushkin
f5a400a0eb
KPM: Fix JAR naming: put the platform name into appendix, not classifier
2022-02-14 15:05:02 +00:00
Sergey Igushkin
c21123cec8
KPM: Add the JVM JAR artifact to the projects archives configuration
...
This automatically sets up the dependency between the `assemble` task
and the task building the JAR
2022-02-14 15:05:02 +00:00
Sergey Igushkin
29fe11b957
KPM: change detection of single-platform fragments to support WASM
...
The previous predicate checked only for JVM/Android and JS, now the
check is independent of the particular platform
2022-02-14 15:05:01 +00:00
Sergey Igushkin
43f7d0fe95
KPM: print fragment names in the error from illegal refines(...) calls
2022-02-14 15:05:01 +00:00
Anton Lakotka
e237072a68
[MPP, KPM]: Add test runner for KPM Model Mapping
...
Add new testKpmModelMapping task that will inject
`kotlin.kpm.experimentalModelMapping=true` property for all
testSuites that implements `BaseGradleIT`.
2022-02-14 15:05:01 +00:00
Anton Lakotka
c5f0cea9a1
[MPP]: Add support for old Gradle BasePluginConvention
...
BasePluginConvention was deprecated in favor of BasePluginExtension
which was introduced in 7.1. So it should be supported until 8.0
where it will be removed.
2022-02-14 15:05:00 +00:00
Anton Lakotka
f1261bd799
[MPP, KPM]: Generate KpmNativeVariants from KonanTargets
2022-02-14 15:05:00 +00:00
Anton Lakotka
bfd5ec3e39
[MPP, KPM]: Use new configureSingleVariantPublication API
2022-02-14 15:04:59 +00:00
Anton Lakotka
4bc1804f23
[MPP, KPM]: Use new configureSingleVariantPublication API
2022-02-14 15:04:59 +00:00
Anton Lakotka
349bcca9e5
[MPP, KPM]: Include sources into publication of LegacyMappedVariant
2022-02-14 15:04:59 +00:00
Sergey Igushkin
0f251477e9
KPM: reshape the API for setting up publications
...
Accept a more structured requests for setting up publication.
Allow passing lower-level overrides for publication
settings of a particular configuration,
which is needed to set up legacy targets'
publications in KPM.
2022-02-14 15:04:58 +00:00
Sergey Igushkin
8676685ebc
Adjust KPM publication for legacy model publication requirements
2022-02-14 15:04:58 +00:00
Sergey Igushkin
42fa23398b
KPM publication setup: use lowercase artifact IDs
2022-02-14 15:04:57 +00:00
Sergey Igushkin
87c3a1b531
Prototype reverse model mapping: represent legacy-only targets in KPM
2022-02-14 15:04:57 +00:00
Sergey Igushkin
57b85e155c
KPM/Gradle: don't include host-specific klibs into the common metadata
2022-02-14 15:04:56 +00:00
Sergey Igushkin
c3fe4e7fb2
KPM/Gradle: disable metadata compilations for JVM & JS shared fragments
2022-02-14 15:04:56 +00:00
Sergey Igushkin
dbb34a44f0
Map Kotlin/Native compilation to the supported-platform KPM variants
2022-02-14 15:04:56 +00:00
Sergey Igushkin
c67f80e1f3
Map Kotlin/Native compilation to the supported-platform KPM variants
2022-02-14 15:04:55 +00:00
Sergey Igushkin
736a33b182
Fix missing K/N compilation task dependency in the compilationOoutputs
2022-02-14 15:04:55 +00:00
Sergey Igushkin
992f7bf3c1
Disable o.j.k.multiplatform publications with KPM model mapping
2022-02-14 15:04:54 +00:00
Sergey Igushkin
bc65bb0775
Improve friend paths calculation in KPM: use actual resolution results
...
Avoid adding compilation outputs of all variants to the friend paths, as
this leads to false task dependencies, and also the real file system
paths on the classpath may not point to the compilation outputs and will
rather use the *Elements artifacts.
2022-02-14 15:04:54 +00:00
Sergey Igushkin
3f49217cc9
Prepare intermediate layer of model mapping in Kotlin compilations
...
Extract all logic and internal model that may be different in different
modes to a separate entity called "compilation details"
2022-02-14 15:04:54 +00:00
Sergey Igushkin
8753ea592f
KPM-mapped-model: simple mapping of JVM variants
2022-02-14 15:04:53 +00:00
Sergey Igushkin
bc8f795f71
Fix BasePluginConvention deprecation in KGP
2022-02-14 15:04:53 +00:00
Sergey Igushkin
2c6c2c3929
Improve registering resources tasks in compilations: support laziness
2022-02-14 15:04:52 +00:00
Sergey Igushkin
876ab4ae52
KPM minor fix registering JVM compilation classesDirs
2022-02-14 15:04:52 +00:00
Sergey Igushkin
0acf923d6a
Rewrite the checks for the presence of KPM: adapt them to mapped models
2022-02-14 15:04:52 +00:00
Sergey Igushkin
d495c5b604
Introduce a container for the KPM model for different kinds of projects
2022-02-14 15:04:51 +00:00
Sergey Igushkin
a998e2d291
Model mapping experiment: map source sets to KPM fragments
...
TODO: keep type compatibility,
inject the behavior in DefaultKotlinSourceSet
2022-02-14 15:04:51 +00:00
Yahor Berdnikau
a26c7ace8b
Remove accidentally left test debug parameters
2022-02-14 16:08:22 +03:00
nataliya.valtman
d4d5c701fe
Make statistic more readable
2022-02-11 17:23:38 +03:00
Yahor Berdnikau
322b10f1bb
Fix changes in Android layout resources breaks incremental compilation
...
This only happens when project has 'kotlin-android-extensions' plugin
applied and 'experimental = true' flag is set. On changes in android
layout resources task was running full compilation instead running
incrementally.
^KT-51177 Fixed
2022-02-11 10:32:07 +00:00
konstantin.tskhovrebov
c08d42d6bb
KT-50106 Add gradle property with global K/N linker flags
...
Clean NativePlatformLibsIT code
2022-02-10 20:22:50 +03:00
Abduqodiri Qurbonzoda
0d46d0d69b
[WASM] Sync stdlib-gen template with actual source code
2022-02-10 10:23:22 +00:00
sebastian.sellmair
0a85f0dd34
[Gradle] Implement ideaImportDependsOn API for KTIJ-20989
...
This will rely on a task called `prepareKotlinIdeaImport` which,
if present, will be invoked by the IDE before import.
Co-authored-by: Sergey Igushkin <Sergey.Igushkin@jetbrains.com >
Merge-request: KT-MR-5688
Merged-by: Sebastian Sellmair <Sebastian.sellmair@jetbrains.com >
2022-02-09 13:43:29 +00:00
konstantin.tskhovrebov
003cb156bf
KT-50106 Add gradle property with global K/N linker flags
2022-02-09 16:23:31 +03:00
nataliya.valtman
d089d27bef
Add proper kotlin version into http reports
2022-02-08 16:24:15 +00:00
Hung Nguyen
d018031cbf
KT-45777: Clean up build cache tests for incremental compilation
...
- Clean up BuildCacheRelocationIT.testKotlinIncrementalCompilation
- Delete BuildCacheIT.testKotlinCompileIncrementalBuildWithoutRelocation
as it is already covered by the test in BuildCacheRelocationIT
- Add BuildCacheRelocationIT.testKotlinIncrementalCompilation_withClasspathSnapshot
- Updated BuildCacheRelocationIT.testKotlinIncrementalCompilation_withClasspathSnapshot
2022-02-08 18:07:38 +03:00
sebastian.sellmair
200cc9f75f
[Gradle][MPP] Disabled CInteorp warning: Show cinterops instead of compilations
...
KT-51176
2022-02-08 09:22:15 +01:00
sebastian.sellmair
56de13fe2f
[Gradle][MPP] Show (potential) warning on disabled cinterop commonization
...
^KT-51176 Verification Pending
2022-02-08 09:22:15 +01:00
Ilya Goncharov
77b367fe96
rra/ilgonmic/ic-to-compiler
...
[JS IR] Fix compilation in tests
[JS IR] Fix test after migrating IC to compiler
[JS IR] Fix memory leak
[JS IR] Move js ic to compiler
Merge-request: KT-MR-5673
Merged-by: Ilya Goncharov <Ilya.Goncharov@jetbrains.com >
2022-02-07 11:40:16 +00:00
nataliya.valtman
56207abc27
KT-34862: Add kotlin build dir as output
...
build history files are non cacheable outputs
#KT-34862
2022-02-07 10:09:36 +00:00