Adam Murdoch

Fix revert

Fix for change to context.

Fix for revert

Finalize value of native compile task source file collection at the start of task execution.

int tests for previous commit.

Change the implementation of `ConfigurableFileCollection.finalizeValue()` so that only the locations are finalized, not the set of files.

For example, when a collection contains a `FileTree` that is backed by a directory, then changes to the directory are reflected in the contents of the collection. In this way, a finalized file collection is basically a finalized set of file system roots, not a finalized set of files.

Change the implementation of `ConfigurableFileCollection.finalizeValue()` so that only the locations are finalized, not the set of files.

For example, when a collection contains a `FileTree` that is backed by a directory, then changes to the directory are reflected in the contents of the collection. In this way, a finalized file collection is basically a finalized set of file system roots, not a finalized set of files.

Change the implementation of `ConfigurableFileCollection.finalizeValue()` so that only the locations are finalized, not the set of files.

For example, when a collection contains a `FileTree` that is backed by a directory, then changes to the directory are reflected in the contents of the collection. In this way, a finalized file collection is basically a finalized set of file system roots, not a finalized set of files.

Unit test coverage for previous commits.

Fixes for previous commit.

Fixes for previous commit.

Fixes for previous commit.

Fixes for previous commit.

Fix previous commit.

Separate out some shared behaviour from the `FileCollectionResolveContext` implementations.

Apply this shared behaviour only to those file collections that need to resolve arbitrary user provided paths, and simplify the contract for `FileCollectionResolveContext`.

  1. … 5 more files in changeset.
Separate out some shared behaviour from the `FileCollectionResolveContext` implementations.

Apply this shared behaviour only to those file collections that need to resolve arbitrary user provided paths, and simplify the contract for `FileCollectionResolveContext`.

  1. … 4 more files in changeset.
Separate out some shared behaviour from the `FileCollectionResolveContext` implementations.

Apply this shared behaviour only to those file collections that need to resolve arbitrary user provided paths, and simplify the contract for `FileCollectionResolveContext`.

  1. … 4 more files in changeset.
Separate out some shared behaviour from the `FileCollectionResolveContext` implementations.

Apply this shared behaviour only to those file collections that need to resolve arbitrary user provided paths, and simplify the contract for `FileCollectionResolveContext`.

Fix for previous commit.

Fix for previous commit.

Remove special case `CachingTaskInputFileCollection` implementation, as a regular `ConfigurableFileCollection` can now be used for this instead.

Remove special case `CachingTaskInputFileCollection` implementation, as a regular `ConfigurableFileCollection` can now be used for this instead.

Remove special case `CachingTaskInputFileCollection` implementation, as a regular `ConfigurableFileCollection` can now be used for this instead.

Add `ConfigurableFileCollection.finalizeValue()` to allow the value of the file collection to be finalized.

The initial implementation is too eager, in that it calculates all of the files of the collection. Instead, it should calculate and finalize all of the roots of the collection. Later commits will improve this.

    • -0
    • +4
    /subprojects/docs/src/docs/release/notes.md
Add `ConfigurableFileCollection.finalizeValue()` to allow the value of the file collection to be finalized.

The initial implementation is too eager, in that it calculates all of the files of the collection. Instead, it should calculate and finalize all of the roots of the collection. Later commits will improve this.

    • -0
    • +4
    /subprojects/docs/src/docs/release/notes.md
Add `ConfigurableFileCollection.finalizeValue()` to allow the value of the file collection to be finalized.

The initial implementation is too eager, in that it calculates all of the files of the collection. Instead, it should calculate and finalize all of the roots of the collection. Later commits will improve this.

    • -0
    • +4
    /subprojects/docs/src/docs/release/notes.md
Add `ConfigurableFileCollection.finalizeValue()` to allow the value of the file collection to be finalized.

The initial implementation is too eager, in that it calculates all of the files of the collection. Instead, it should calculate and finalize all of the roots of the collection. Later commits will improve this.

    • -0
    • +4
    /subprojects/docs/src/docs/release/notes.md
Remove unnecessary check.

Remove unnecessary check.

Remove unnecessary check.