TaskInputPropertiesIntegrationTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Rename Task{InputProperties -> Parameters}IntegrationTest

The test is also testing output parameters.

    • -744
    • +0
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 1 more file in changeset.
Rename Task{InputProperties -> Parameters}IntegrationTest

The test is also testing output parameters.

    • -744
    • +0
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 1 more file in changeset.
Forbid tasks write into transform workspaces

    • -6
    • +6
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 12 more files in changeset.
Forbid tasks write into transform workspaces

    • -6
    • +6
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 12 more files in changeset.
Forbid tasks write into transform workspaces

    • -4
    • +4
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 12 more files in changeset.
Add some more test coverage for using various `Property` types as task properties.

    • -28
    • +37
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 4 more files in changeset.
Add some more test coverage for using various `Property` types as task properties.

    • -28
    • +37
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 4 more files in changeset.
Finalize the value of any task `@Input` property whose getter returns a property instance, at the start of execution of the task.

This means that the property value will not change once the task has started execution, so that the same value is always used during fingerprinting, cache key calculation, validation, when queried by a task action, and so on.

This behaviour only applies to `@Input` properties in this commit. This was just a place to start. Other properties will be added in later commits.

Changes to the property are ignored once the value is finalized implicitly in this way and generate a deprecation warning instead of failing, as would happen after `finalizeValue()` is called. This allows a migration path for task types that can add a new property to represent some input and keep their existing lenient (but now deprecated) behaviour for an existing property backed by the new property. It might prove better to flip this around, let's see.

    • -1
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 61 more files in changeset.
Ignore `@Nested` properties when attaching output file `Property` instances to their producing task.

This is a work around to avoid the performance cost of `@Nested` property getters that throw exceptions when called immediately after the task is created. These issues will be addressed later and better support for output file `Property` properties attached to nested beans added.

    • -2
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 12 more files in changeset.
Associate each property of type `Provider` that is annotated as an output of a task with the task so that the provider carries the correct task dependency information when used as an input to another task.

This allows task properties created using `ProjectLayout` correctly carry the task dependency information rather than silently ignoring this. These properties now work consistently with those created using `newOutputFile()` and `newOutputDirectory()`. A later change will merge these into a single API that can be used to create these properties instead of having 2 separate APIs for this. This change is simply making the behaviour the same in both places.

This change intentionally ignores outputs file properties declared on `@Nested` properties and also ignores validation. These will be added later.

    • -2
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 17 more files in changeset.
Merge pull request #6410 from gradle/wolfs/deprecations/task-inputs-chaining

Disallow task inputs/outputs chaining

    • -48
    • +3
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 2 more files in changeset.
Remove CompatibilityAdapterForTaskOutputs

    • -48
    • +3
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 9 more files in changeset.
Forbid registering invalid inputs via runtime API

#6280

#6282

    • -39
    • +28
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 21 more files in changeset.
Deprecation progress events are enriched to allow better visualisation (#6034)

Update deprecation model; tweak deprecation messages

* some renamings in feature usage

* introduce feature usage type

* introduce contextual advice for deprecation messages

    • -5
    • +6
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 28 more files in changeset.
Expose deprecation warning messages and stacktraces via build operations (#5881)

Expose deprecation warnings as operation progress events

- introduce split of message, warning and advice

- make deprecation progress events immutable

- rework deprecation handling/messages to support more a richer model

- update build operation progress model

- tweak existing deprecation warnings to match new model

- Add performance test + make stacktrace calculation for build ops lazy

- Always include a trace with FeatureUsage now that its always required

    • -6
    • +6
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 65 more files in changeset.
Spike worked during the parallel-by-default session at the world meeting

    • -0
    • +52
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 24 more files in changeset.
Dogfood ImmutableFileCollection on production code (#4988)

This reverts commit 13eaebc2b1244511dcbff4c59cd41253e3b69642.

    • -2
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 88 more files in changeset.
Revert "Dogfood ImmutableFileCollection on production code (#4988)"

This reverts commit 834632674ca29b6fd190857947338b2b54a9bb62.

The commit caused a bug in incremental compilation, causing changes

to go undetected.

    • -2
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 88 more files in changeset.
Dogfood ImmutableFileCollection on production code (#4988)

Use ImmutableFileCollection in production code

    • -2
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 88 more files in changeset.
Allow enabling build cache in all integration tests

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

    • -2
    • +1
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 27 more files in changeset.
Use `TestBuildCache` instead of `DirectoryBuildCacheFixture`

I still use `BuildCacheFixture` since using `withBuildCache().succeeds`

is easier to read IMO.

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

    • -5
    • +5
    ./TaskInputPropertiesIntegrationTest.groovy
Add test how often task properties are evaluated

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

    • -1
    • +99
    ./TaskInputPropertiesIntegrationTest.groovy
Fix TaskInputs.property(..., null) throws NPE (#3368)

Remove internal overrides causing trouble.

    • -0
    • +36
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 9 more files in changeset.
Detect changes between null output file and non-existent output file (#3079)

We need to distinguish between an optional output file property which

is `null` and a property which points to some non-existent files.

The easiest way to do so is to remove optional output properties which

are `null` completely.

We break some tests now that we distinguish the order in which the

output files are declared.

    • -11
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 9 more files in changeset.
Re-add previously removed tests for property name checking

    • -2
    • +2
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 1 more file in changeset.
Deprecate chaining TaskInputs.properties() as well

This means all method chaining is either disallowed or deprecated now, and all should be disallowed in 5.0.

    • -3
    • +9
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 16 more files in changeset.
Check for wrong input/output file types registered via runtime API

    • -0
    • +51
    ./TaskInputPropertiesIntegrationTest.groovy
Do not fail when invalid runtime inputs and outputs are registered

We show a deprecation warning instead.

    • -6
    • +55
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 9 more files in changeset.
Check that runtime input validation works

    • -2
    • +74
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 4 more files in changeset.
Deprecate chaining TaskInputs.property() properly

    • -1
    • +14
    ./TaskInputPropertiesIntegrationTest.groovy
  1. … 5 more files in changeset.