changedetection

Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Deprecate declaring incremental tasks with no outputs

An incremental task should always declare an output. Gradle

automatically declared an upToDate spec for incremental tasks to make

sure this is always the case.

Actually, the implementor of the task should add the spec if the task

does not declare any outputs. We expect nearly all incremental tasks

to already declare outputs.

    • -0
    • +31
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 7 more files in changeset.
Deprecate declaring incremental tasks with no outputs

An incremental task should always declare an output. Gradle

automatically declared an upToDate spec for incremental tasks to make

sure this is always the case.

Actually, the implementor of the task should add the spec if the task

does not declare any outputs. We expect nearly all incremental tasks

to already declare outputs.

#9723

    • -0
    • +31
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 7 more files in changeset.
Add test 'task without output is never up-to-date'

    • -0
    • +27
    ./state/TaskTypeUpToDateIntegrationTest.groovy
Change more tests.

    • -19
    • +19
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 40 more files in changeset.
Change more tests.

    • -5
    • +5
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -19
    • +19
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 98 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -19
    • +19
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 98 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -19
    • +19
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 98 more files in changeset.
Fixes for changes to fixture.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 10 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Remove `CorruptedTaskHistoryIntegrationTest`

The usefulness of this test has become irrelevant. The test is flaky,

and hardly test anything given the task history writing is now atomic.

    • -154
    • +0
    ./CorruptedTaskHistoryIntegrationTest.groovy
Make `CorruptedTaskHistoryIntegrationTest` less flaky

    • -15
    • +53
    ./CorruptedTaskHistoryIntegrationTest.groovy
Reduce poll interval even further

There still seems to be some flakyness left.

    • -2
    • +2
    ./CorruptedTaskHistoryIntegrationTest.groovy
Reduce flakiness of CorruptedTaskHistoryIntegrationTest

Instead of using a fixed interval after which to kill the Gradle

process we poll until 40 tasks have completed. That should isolate

the test from varying build durations.

    • -16
    • +16
    ./CorruptedTaskHistoryIntegrationTest.groovy
Split CodeNarc configuration for integration tests

Now that there are rules specific to integration tests, we have a dedicated

configuration file. This should avoid some accidental noise, and removes

the need to check for `Integration` in the test name, which helped discover

a few more problems.

  1. … 7 more files in changeset.
Add new test coverage

    • -0
    • +194
    ./state/AbstractBrokenSymbolicLinkUpToDateIntegrationTest.groovy
    • -0
    • +63
    ./state/InputDirectoryContainingDanglingBrokenSymbolicLinkUpToDateIntegrationTest.groovy
    • -0
    • +61
    ./state/OutputDirectoryContainingDanglingBrokenSymbolicLinkUpToDateIntegrationTest.groovy
  1. … 2 more files in changeset.
Allow enabling build cache in all integration tests

Signed-off-by: Lóránt Pintér <lorant@gradle.com>

    • -48
    • +48
    ./rules/OverlappingOutputsIntegrationTest.groovy
  1. … 27 more files in changeset.
Remove some wrong timing loggings (#3860)

* Remove some wrong timing loggings

The time which was captured for up-to-date checks is wrong, since it

did not include actual snapshotting any more.

The time captured how long it took to load/unpack from the cache now

would have included the time it took to snapshot the inputs, too.

These timings are much better captured by the corresponding build

operations, so we remove the log entries for now.

Signed-off-by: Stefan Wolf <wolf@gradle.com>

  1. … 7 more files in changeset.
Add a couple of tests for overlapping output detection for local state

    • -18
    • +225
    ./rules/OverlappingOutputsIntegrationTest.groovy
Use better INFO log for non-up-to-date tasks (#3111)

  1. … 1 more file in changeset.
Kill process earlier to remove flakiness from test.

    • -2
    • +4
    ./CorruptedTaskHistoryIntegrationTest.groovy
Fix test by waiting until enough outputs generated

    • -2
    • +6
    ./CorruptedTaskHistoryIntegrationTest.groovy
Relax restrictions on range

    • -1
    • +1
    ./CorruptedTaskHistoryIntegrationTest.groovy