buildSplits.gradle

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Make Build Types support partial execution for subprojects

This removes buildSplits and testGroupings. Since CI jobs now run

separately for each subproject, we do not need to group tasks

from several sub-projects in specific custom buckets anymore.

  1. … 3 more files in changeset.
Extract :core-api project (#2719)

  1. … 785 more files in changeset.
Move 'org.gradle.caching' to build-cache

+review REVIEW-6562

  1. … 150 more files in changeset.
Move some of persistent-cache out of core

+review REVIEW-6562

  1. … 127 more files in changeset.
Add GCS transport protocol support, similar to S3 (#2258)

  1. … 46 more files in changeset.
Add build types for subprojects

Add build types for subprojects

Remove version-info.jar

+review REVIEW-6527

  1. … 13 more files in changeset.
Deprecation removal of Gradle GUI (#1749)

Remove Gradle GUI code, leftovers Open API code and user guides.

  1. … 191 more files in changeset.
Remove deprecated Jetty plugin

Issue: #735

  1. … 38 more files in changeset.
Fix cyclic dependency in dependency-management

Extract shaded runtime API relocation info into separate project/JAR and rearrange dependencies around it.

+review REVIEW-6484

  1. … 7 more files in changeset.
Rename task-cache-http project to build-cache-http

+review REVIEW-6392

  1. … 12 more files in changeset.
Move workers into their own subproject

  1. … 122 more files in changeset.
Extract build receipt into own jar

Instead of including the build receipt into

the core jar we add it to an own jar - version-info.

The build receipt often contains a timestamp and therefore

we want to use it as little as possible.

By doing this we keep the classpath constant between

builds and therefore allow for more caching.

We also have to add the version-info to the Gradle Worker process.

This makes it possible to evaluate the `GradleVersion`

in those, too. If one wants to log deprecation messages

from there this is necessary. For example`JULRedirectorIntegrationTest.defaultLoggingConfigNoFineLevelWhenDisabled`

fails without this.

PR #805

  1. … 10 more files in changeset.
Implement Android Studio Mockup performance test

This commit adds a new kind of cross-version performance test which simulates the behavior of Gradle under Android Studio.

The first simulation is based on project synchronization and relies on previous work found on the android-studio-sync-test

(https://github.com/adammurdoch/android-studio-sync-test) project.

It's worth noting that the classes in `internal-android-performance-testing` are collecting some statistics which are *not*

used when generating the reports. This commit just setups the basic infrastructure for performance testing of Android projects

in the context of Android Studio.

Some implementation notes:

- the custom model used when calling the Tooling API live in a dedicated project (`internalAndroidPerformanceTesting`) so that

we can generate a JAR that can in turn be added to the classpath when executing the test. This allows us to precompile the model

class and limit the impact of using Groovy to collect statistics.

- the `internalAndroidPerformanceTesting` project uses a trick to workaround an issue with some Android dependencies which

provide a `gradle-core` jar. This is problematic because our module lookup finds this jar first and tries to load it as the

main Gradle module, although it's not. For that reason, the dependencies are renamed (prefixed with `android-`) and added to

the classpath, avoiding this name clash.

- this classpath, as well as the generated custom model classes, are written in a `tapi-classpath.txt` file which is then

used by the performance test runner to set the tooling api classpath.

  1. … 10 more files in changeset.
Introduce HTTP task output cache backend

This adds a nice reference implementation for task output cache backends, and also serves as a versatile backend protocol.

Also refactored the cache protocol itself to be simpler and more streaming-oriented to support networked backends better.

+review REVIEW-6146

  1. … 14 more files in changeset.
Merge branch 'master' into composite-builds

  1. … 2 more files in changeset.
Moved composite build integration tests into a separate subproject

  1. … 14 more files in changeset.
Move Build Scan performance test to own project

  1. … 28 more files in changeset.
Extract performance test fixtures to separate project

  1. … 248 more files in changeset.
Revert "Temporarily reverting everything since 810f052813ea0835dc7e9d3eb87bca005815db64 for 3.0-milestone-1 release"

This reverts commit 506f8ce9d6dc1a81e8ff10575c512778ca2f382a.

  1. … 199 more files in changeset.
Temporarily reverting everything since 810f052813ea0835dc7e9d3eb87bca005815db64 for 3.0-milestone-1 release

  1. … 199 more files in changeset.
Moved smoke tests to own subproject and have them using testkit

In the long run these will probably be moved out of the gradle multirepo.

For now, they live in an own subproject and will get a dedicated build.

For running them use ``:smokeTest:smokeTest`

The smoke tests have been migrated to use TestKit for running them -

for dogfooding testing of plugins.

Currently failing smoke tests have been annoted with @Ignore and the

reason why they fail on master. We still need to find a way how to

proceed with this failures in the CI build.

+review REVIEW-6025

  1. … 10 more files in changeset.
Adds four new build splits for speed.

Adds four new build splits for speed.

Added soak test category

  1. … 10 more files in changeset.
Merge release branch into master.

  1. … 3 more files in changeset.
Remove the Sonar plugin

+review REVIEW-5959

  1. … 163 more files in changeset.
Moved `VmVersionDetector` out of 'launcher' project into new 'jvmServices' project, where it can be reused.

  1. … 16 more files in changeset.
Renamed 'process' project to 'processServices'

  1. … 23 more files in changeset.