Vladimir Sukharev
c8864369fd
Use main class as test generator name
...
Merge-request: KT-MR-7031
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2022-09-09 12:51:18 +00:00
Nikita Bobko
2a4f3f41aa
2/5 Replace source dependency on kotlin-reflect with binary dependency
...
Review: https://jetbrains.team/p/kt/reviews/6753
Meaningful semantic change was splitted into 5 commits to simplify the
change review. Sinle commit would be too big.
Why replace source to binary: to get rid of kotlin-reflect in Kotlin
plugin artifact KTIJ-22276
Note: Kotlin Maven artifacts (./gradlew publish) changed their
dependency on kotlin-reflect
2022-08-22 15:43:49 +02:00
Dmitry Savvinov
174252f68f
[mpp, tests] Add tests for rendering KpmTestCases
2022-08-12 12:34:14 +02:00
Dmitry Savvinov
afa9c2f8b9
[mpp, tests] Use JUnit5 in kotlin-project-model tests
2022-08-12 12:34:14 +02:00
Dmitry Savvinov
c1e21f5b8f
[mpp, tests] Add infrastructure for *Generated KPM Core tests
2022-08-12 12:34:14 +02:00
Dmitry Savvinov
309b2f569d
[mpp, tests] Add few simple KpmCoreCases
2022-08-12 12:34:14 +02:00
Dmitry Savvinov
a2c9864adc
[mpp, tests] Introduce KpmCoreCases infrastructure
2022-08-12 12:34:14 +02:00
Dmitry Savvinov
3bb70f55d7
Minor: add KpmVariant.nativeTarget extension
2022-08-12 12:34:14 +02:00
sebastian.sellmair
d4dc6a3d71
[kpm] Introduce GradleKpm* naming convention (2/2)
...
All Gradle specific kpm entities shall be disambiguated by using
the `GradleKpm` prefix. For example `MyEntity` shall now be called
`GradleKpmMyEntity` and a subclass would be called like
`GradleKpmSpecialMyEntity`
2022-05-25 13:15:43 +00:00
sebastian.sellmair
dcd47a89dd
[kpm] Introduce GradleKpm* naming convention (1/2)
...
All Gradle specific kpm entities shall be disambiguated by using
the `GradleKpm` prefix. For example `MyEntity` shall now be called
`GradleKpmMyEntity` and a subclass would be called like
`GradleKpmSpecialMyEntity`
2022-05-25 13:15:42 +00:00
sebastian.sellmair
e55f00c3d9
[kpm] Introduce Kpm* naming convention (2/2)
...
All Kpm owned entities shall be disambiguated by using the `Kpm` prefix
E.g. MyEntity has to be called KpmMyEntity and a subclass is called
KpmSpecialMyEntity
2022-05-25 13:15:41 +00:00
sebastian.sellmair
71677ad455
[kpm] Introduce Kpm* naming convention (1/2)
...
All Kpm owned entities shall be disambiguated by using the `Kpm` prefix
E.g. MyEntity has to be called KpmMyEntity and a subclass is called
KpmSpecialMyEntity
2022-05-25 13:15:40 +00:00
Yahor Berdnikau
cf2d03b914
Move common configuration from /build.gradle.kts into plugin
...
Move all common to all projects configuration from root build.gradle.kts
into common-configuration convention plugin.
2022-05-24 07:58:36 +00:00
sebastian.sellmair
14046b81ff
Replace transitiveClosure (commonizer-api) with closure (tooling-core)
2022-03-09 13:17:06 +00:00
sebastian.sellmair
e91785ba39
[KPM] Implement initial IdeaKotlinProjectModelBuilder
...
- Introduce `kotlin-gradle-plugin-idea` module that allows
to share models between the IDE and KGP
- Add `kotlin-gradle-plugin-idea` to the RuntimePublicAPITest to
ensure binary compatibility
^KT-51262
2022-02-17 20:19:12 +00:00
Alexander Likhachev
aba495f63c
[Gradle] Remove deprecated experimental annotation methods & properties
...
#KT-47763 Fixed
2022-02-16 08:27:46 +00:00
sebastian.sellmair
abed5b98ac
[Gradle][MPP] Implement ChooseVisibleSourceSetProjection as nested task input
...
^KT-50952 Verification Pending
2022-01-26 17:18:16 +00:00
sebastian.sellmair
1fb723f844
[Gradle][KPM] Split fragment factories into composable entities
...
This compasability will ensure that external target authors
(AGP) are able to reuse most of KPM code whilst allowing a lot of
customizability.
2021-12-07 21:38:56 +00:00
sebastian.sellmair
6129d920c7
[Gradle][KPM] Implement IdeFragmentDependency(&Resolver)
...
This apis are expected to be called reflectively during
Gradle/Ide import of KPM projects.
2021-12-07 17:53:22 +00:00
Yan Zhulanow
46b94a4757
Pill: Include certain modules into the BASE variant
2021-10-19 19:55:06 +03:00
Alexander Udalov
ca7334acb9
Fix some warnings in Gradle plugin and related modules
2021-08-06 22:36:58 +02:00
Mikhael Bogdanov
228100ef09
Upgrade toolchain to api/lv 1.4
2021-07-29 19:45:53 +02:00
Alexander Likhachev
fa68dbc736
[Gradle] Rename experimental annotations to opt-in annotations in DSL
...
Methods and accessors with old names are preserved in public API and marked as deprecated now
#KT-38111 In Progress
2021-07-16 11:01:12 +03:00
Anton Lakotka
52abecab43
Rename sensitive flag to isTransient and inverse logic, add file outputs
...
isTransient with default value as false makes it a bit more readable
Some Compiler Plugins can use file outputs properties to dump some data
there and gradle can support incremental build
with file outputs.
2021-06-08 15:49:05 +00:00
Anton Lakotka
bc7ff04f1f
Store sensitive plugin options in Task inputs
2021-06-08 15:49:01 +00:00
Anton Lakotka
5a58c1c437
[Kotlin Project Model] Add compiler plugin support
2021-06-08 15:48:58 +00:00
Sergey Igushkin
53f02a53f0
Add caching to dependency resolvers in PM20 + some refactoring
2021-04-23 00:43:13 +03:00
Sergey Igushkin
e7b81c52a7
Get rid of DependencyDiscovery in favor of DependencyGraphResolver
2021-04-23 00:43:11 +03:00
Sergey Igushkin
d602470027
Fix compilation of the tests in kotlin-project-model
2021-04-23 00:43:10 +03:00
Anton Lakotka
1a85da5ff8
Make language settings nullable in KotlinModuleFragment
...
There is no lang settings when importing from klibs (yet)
2021-04-23 00:43:07 +03:00
Anton Lakotka
de4221afd8
Add immutable LanguageSettings interface and apply it to compilation
...
LanguageSettingsBuilder extends LanguageSettings
2021-04-23 00:43:06 +03:00
Sergey Igushkin
f029179fe0
Add basic support for Kotlin/Native variants to the PM20 Gradle plugin
2021-04-23 00:43:00 +03:00
Sergey Igushkin
f1f97b4104
Support published MPP consumption with PM2.0 projects
2021-04-23 00:42:34 +03:00
Sergey Igushkin
70b88ada93
Gradle plugin prototype that uses the project model 2.0
2021-04-23 00:42:34 +03:00
Sergey Igushkin
d66f95b80e
Resolve dependencies as graph, support multiple modules in a project
2021-04-22 23:42:06 +03:00
Sergey Igushkin
f1fb438d00
Refactor: make fragments resolver consistent with variant resolver
2021-04-22 23:42:05 +03:00
Sergey Igushkin
7103aa3100
ModuleOrigin -> ModuleIdentifier
2021-04-22 23:42:04 +03:00
Sergey Igushkin
66b8a444c2
Add a basic markdown doc explaining dependency resolution.
2021-04-22 23:42:02 +03:00
Sergey Igushkin
994f940a31
Dependency resolution API in PM2.0
2021-04-22 23:42:00 +03:00
Sergey Igushkin
f189ebc983
Project Model 2.0 initial commit: core entities
2021-04-22 23:41:59 +03:00