platform-jvm.gradle

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Convert `platform-jvm` build script to Kotlin

  1. … 2 more files in changeset.
Converted many Groovy script to Kotlin and improved the Kotlin DSL usage in some existing Kotlin scripts.

  1. … 95 more files in changeset.
Convert dependency management related subprojects to kotlin-dsl (#4498)

This PR also fixes the dependency declarations wrt. api/impl separation

for these and related projects.

It fixes two places in production/test code where dependencies

leaked into the classpath and the wrong classes where imported.

  1. … 21 more files in changeset.
Introduced the property moduleType to derive source compatibility settings

  1. … 80 more files in changeset.
Added gradlebuild namespace to plugins and more modularization in buildSrc

- Added to all plugins in buildSrc "gradlebuild." to their id

- Shortened plugin names

- Added ide and docs as additional modules

- Applied java-library plugin to Kotlin projects to model dependencies

  1. … 86 more files in changeset.
Extract idiomatic strict-compile plugin to buildSrc

Sub projects request the plugin if needed.

The plugin configures the Java and Groovy compilation tasks according

to the `strictCompile` extension configuration.

No more Groovy Closures as a Project extra properties.

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 30 more files in changeset.
Extract idiomatic test-fixtures plugin to buildSrc

Plugin is applied to all "groovy projects", see `groovyProject.gradle`.

The plugin configures the Project as a test fixtures producer if

`src/testFixtures` is a directory.

The plugin configures the Project as a test fixtures consumer according

to the `testFixtures` extension configuration.

No more Groovy Closure with optional parameters as a Project extra

property.

Test-fixtures configuration rely on a Groovy DSL only feature that

allows to pass a collection of dependency notations when declaring

dependencies. The Kotlin DSL lacks this feature, see

https://github.com/gradle/kotlin-dsl/issues/639

A workaround has been put in place in `build-extensions.kt` in order to

move forward until this is properly fixed in the Kotlin DSL.

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 70 more files in changeset.
Make the Classycle configuration more idiomatic

by replacing the configuration function useClassycle() as extra project

property with a plugins {} block plugin request and a project extension.

The classycle extension has two properties, one for the excludes defined

per project, the other one to reference the report resources zip.

This change will make configuring classycle from Kotlin DSL scripts

nicer.

Introduce kotlin-dsl-upstream.kt in buildSrc org.gradle.kotlin.dsl

package for members missing from the Gradle Kotlin DSL intended to be

pulled upstream into the next Gradle Kotlin DSL release.

A sole extension added: reified ObjectFactory.listProperty()

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 54 more files in changeset.
Changed a couple more projects to use `java-library` plugin. Also inject Groovy as a test compile dependency for all projects, and removed the declaration from various project's build files.

  1. … 34 more files in changeset.
Detangle ivy module descriptor parser

This commit removes the Ivy module descriptor parser as a service, because it unfortunately introduced

a lot of tangling between projects, making it necessary to introduce `project(':ivy')` as a dependency

to almost all projects.

This commit removes the parser as a service and creates it on demand. It should not have a big impact

on performance since there should be only one instance in global scope, through `IvyResolver`.

  1. … 19 more files in changeset.
Turn `ModuleExclusions` into a build scoped service

  1. … 53 more files in changeset.
Changed default Java version for our projects to Java 7. Changed build scripts for those projects that still require Java 6.

  1. … 14 more files in changeset.
Expose ComponentSpec.source() as a node backed model map, instead of a domain object collection wrapped model map.

+review REVIEW-5498

  1. … 39 more files in changeset.
Add @RequiresInstalledToolChain to tests that, well, require an installed toolchain.

  1. … 9 more files in changeset.
Moved some component report int test cases to live with the specific component/binary types.

  1. … 4 more files in changeset.
Moved Jar and Classes dir binary renderers to platformJvm and plugins projects to live with the corresponding binary implementations.

  1. … 13 more files in changeset.
Don't need groovy at compile time for these projects.

  1. … 1 more file in changeset.
Renamed ‘language-base’ project to ‘platform-base’

  1. … 203 more files in changeset.
Extract java and groovy compilation into separate language subprojects

- ‘language-java’ contains JavaCompile task, compiler infrastructure and associated classes

- ‘language-groovy’ contains GroovyCompile task and associated infrastructure

- depends on ‘language-java’

- ‘language-jvm’ contains ProcessResources task and some common JVM language infrastructure

  1. … 321 more files in changeset.
Strict compile for ‘platform-jvm’

  1. … 5 more files in changeset.
Extract core JVM platform classes into new subproject ‘platform-jvm’

  1. … 89 more files in changeset.