Clone Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
Add environment specific versions of test tasks

  1. … 11 more files in changeset.
Convert `platform-play` build script to Kotlin

  1. … 2 more files in changeset.
Model test fixtures as a propert artifact

Previously they were modeled as just a file collection,

which confused the IDEA importer. They now use the more

canonical way of defining an additional artifact.

In a next step they should be reimplemented using variant

aware dependency resolution, so that we don't need a special

DSL to declare these dependencies.

  1. … 14 more files in changeset.
No more strict compile for platform play

To fix building on Java 9.

Converted many Groovy script to Kotlin and improved the Kotlin DSL usage in some existing Kotlin scripts.

  1. … 95 more files in changeset.
Improve laziness of gradlebuild by using build scans

  1. … 16 more files in changeset.
Use TaskContainer.register() over TaskContainer.createLater()

  1. … 11 more files in changeset.
Remove circular reference

Use configureEach over configureEachLater

configureEachLater is going to be removed.

  1. … 12 more files in changeset.
Avoid configuring Test tasks

  1. … 8 more files in changeset.
Merge testing and integration-testing

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

  1. … 80 more files in changeset.
Removed almost all extra properties and extracted build environment check into plugin

- Moved extra properties into extension methods

- Created AddVerifyProductionEnvironmentTaskPlugin

- Moved build-extensions from kotlin-dsl to configuration submodule

- Created separate extensions for project groups

  1. … 38 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.
"coordinate" -> "coordinates"

  1. … 60 more files in changeset.
Move dependency constraints into a separate project

  1. … 69 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 <>

  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


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

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 <>

  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


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 <>

  1. … 54 more files in changeset.
Favour declarative plugin application in build scripts

  1. … 26 more files in changeset.
Integrate the prepare test into the regular integ test suite and resolve more configurations

  1. … 2 more files in changeset.
Make all integration tests depend on the prepare phase, not only the parallel version

In other words, even `integTest` can have test classes running concurrently, because of `maxParallleForks`.

  1. … 1 more file in changeset.
Pre-populate the repository for Play! tests

This commit introduces a new task, `integTestPrepare`, which is executed before any other Play! integration test

and will populate the Gradle cache found in the integration test home directory with dependencies used by the

integration tests. This should prevent some flakiness in those tests, which tend to timeout because they all try

to download the Scala compiler and its family. While it's in general not an issue, the problem is that the

collection of artifacts to be download is quite large, so cross-process locking may reach the 60s timeout. To

prevent this from happening, we forcefully execute a dummy test during the `integTestPrepare` execution, which

will trigger downloading of dependencies. This test is alone, and will be executed serially before the integration

tests run concurrently in `parallelIntegTest`.

  1. … 2 more files in changeset.
Changed core project to use `java-library` plugin. Fixed some dependency leaks and moved a test fixture method to live in a better home.

  1. … 14 more files in changeset.
Moved test factory methods out of production code

  1. … 19 more files in changeset.
Provide :compositeBuilds to integTests where required

The `idea` plugin requires services provided by the :compositeBuilds

module. There's undoubtedly a lower level dependency missing here.

  1. … 1 more file 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.
Add integration coverage for using Play with IDEA

- Extract test fixtures from :ide for use in :idePlay

- Verify that all Play sources are sourceFolders

- Verify that Java version and Scala version match PlayPlatform

  1. … 15 more files in changeset.
BaseBinarySpec.sources is a node-backed ModelMap

  1. … 22 more files in changeset.
Refactoring compiler reuse integration tests

+review REVIEW-5582

  1. … 6 more files in changeset.