Gradle

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Fix test

There was a typo.

+review REVIEW-6205

Removed extra validation that is of dubious value

Since this validation error always appears in the context of the

build being configured, providing this additional detail is probably

not worth it.

+review REVIEW-6192

Document order- and path sensitivity

Add user guide entries, updated some Javadoc and included path sensitivity in a user guide sample.

+review REVIEW-6170

    • -2
    • +20
    /subprojects/docs/src/docs/userguide/tasks.xml
Test dependency substitution in included build task

+review REVIEW-6192

Fail gracefully for name collision with delegating task

+review REVIEW-6192

Use a single delegating task for each included build

Rather than constructing a separate delegating task for each task

dependency in an included build, we now use a single delegating task

for all tasks in an included build. This means that if the task graph

contains multiple task dependencies on an included build, all of these

tasks will be run in a single build execution, at the time the first

task of them is required.

+review REVIEW-6192

Improve API javadoc and mark @Incubating

+review REVIEW-6192

Fix some issues with path sensitivity handling

Add some tests to cover all combinations of the following dimensions:

- up-to-date checks vs. task output caching

- path sensitivity

- order sensitivity

When path sensitivity is NONE, we now ignore directories (because they have no content, so there would be nothing to compare anyway).

+review REVIEW-6170

Polish project priority design doc

+review REVIEW-6173

#596

    • -8
    • +14
    /design-docs/dependency-management-projectpriority.md
Change the `flamegraphs` flag so that it needs to be set to `true`.

The rationale for this change is that when we're going to run those from TeamCity,

a parameter has to be set. It cannot be absent, so we need to set it to a recognizable

value. By setting to `true`, we're going to generate flame graphs. Any other value

will result in the traditional behavior, without profiling or flame graph generation.

Change the `flamegraphs` flag so that it needs to be set to `true`.

The rationale for this change is that when we're going to run those from TeamCity,

a parameter has to be set. It cannot be absent, so we need to set it to a recognizable

value. By setting to `true`, we're going to generate flame graphs. Any other value

will result in the traditional behavior, without profiling or flame graph generation.

Change the `flamegraphs` flag so that it needs to be set to `true`.

The rationale for this change is that when we're going to run those from TeamCity,

a parameter has to be set. It cannot be absent, so we need to set it to a recognizable

value. By setting to `true`, we're going to generate flame graphs. Any other value

will result in the traditional behavior, without profiling or flame graph generation.

Introduce the `--flamegraphs` flag

When a performance test is executed with the `--flamegraphs` flag, a report directory

will be generated under the test output build directory containing the flame graphs

for the execution of this test.

This implies:

- that honest profiler will be executed as part of the test

- that the environment variables are set to find honest profiler and the flame graph generator

The output zip of the performance test task will contain the flame graphs, making it possible

to fetch those from the CI server.

Introduce the `--flamegraphs` flag

When a performance test is executed with the `--flamegraphs` flag, a report directory

will be generated under the test output build directory containing the flame graphs

for the execution of this test.

This implies:

- that honest profiler will be executed as part of the test

- that the environment variables are set to find honest profiler and the flame graph generator

The output zip of the performance test task will contain the flame graphs, making it possible

to fetch those from the CI server.

Introduce the `--flamegraphs` flag

When a performance test is executed with the `--flamegraphs` flag, a report directory

will be generated under the test output build directory containing the flame graphs

for the execution of this test.

This implies:

- that honest profiler will be executed as part of the test

- that the environment variables are set to find honest profiler and the flame graph generator

The output zip of the performance test task will contain the flame graphs, making it possible

to fetch those from the CI server.

Make it possible to generate flame graphs during performance tests

This commit improves the integration of Honest Profiler by making it possible to post-process the log files and generate a flame graph.

For this to be possible, the `org.gradle.performance.honestprofiler` system property must be set to a directory where flame graphs will

be exported.

It is expected to find 2 environment variables:

- `HP_HOME_DIR` must point to a valid Honest Profiler installation (https://github.com/RichardWarburton/honest-profiler)

- `FG_HOME_DIR` must point to a valid FlameGraph installation (https://github.com/brendangregg/FlameGraph)

In case those are not set, the collector will try to find them in `~/tools/honest-profiler` and `~/tools/FlameGraph` respectively.

The graphs are *not* integrated into the performance reports yet.

Make it possible to generate flame graphs during performance tests

This commit improves the integration of Honest Profiler by making it possible to post-process the log files and generate a flame graph.

For this to be possible, the `org.gradle.performance.honestprofiler` system property must be set to a directory where flame graphs will

be exported.

It is expected to find 2 environment variables:

- `HP_HOME_DIR` must point to a valid Honest Profiler installation (https://github.com/RichardWarburton/honest-profiler)

- `FG_HOME_DIR` must point to a valid FlameGraph installation (https://github.com/brendangregg/FlameGraph)

In case those are not set, the collector will try to find them in `~/tools/honest-profiler` and `~/tools/FlameGraph` respectively.

The graphs are *not* integrated into the performance reports yet.

Tests for path sensitivity vs caching

Different levels of path sensitivity for an input property allow renaming or moving the property files and still allow cached results to be reused.

+review REVIEW-6170

Make `@PathSensitive` public

We need this annotation in the public API

+review REVIEW-6170

Fix cross-version tests

Test caching when Java sources are is relocated

`JavaCompile` now understands that source files are relocatable. Cached results can now be shared between builds even if sources are in a different directory.

+review REVIEW-6170

Test caching when full project is relocated

`JavaCompile` now understands that source files are relocatable. Cached results can now be shared between builds in different directories.

+review REVIEW-6170

Fix broken test

Make TaskClassInfoStore thread-safe and weak

Polish project priority design doc

+review REVIEW-6173

#596

    • -18
    • +32
    /design-docs/dependency-management-projectpriority.md
Remove code duplication in ExtraPropertiesIntegrationTest

+review REVIEW-6198

GRADLE-3530

Fix test for different output in different versions

Ignored broken test temporarily

Fix integration test for changed path rendering

Javadocs.