Gradle

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Make DeprecatedClassloader closeable

Polish code before changes

- fix nullability warnings

- use Java 8 syntax

Fix `:instantExecutionReport` jar not to include duplicate entries

Make `instant-execution.gradle.kts` compatible with eager mode

Remove unnecessary operation

Adjust test

Merge branch 'release'

Merge pull request #9461 from gradle/wolfs/xforms/support-nested

Generate read-only user type properties

    • -0
    • +8
    /subprojects/docs/src/docs/release/notes.md
Add build operation for snapshotting artifac trasnform inputs

Fix test

Add comment about the operations being temporary only

Check for duplicated element on the private container of ModelMap

A ModelMap<Task> is a shadow version of the TaskContainer inside the

software model. The ModelMap only check if the type of the created

element match the container. With this commit, the ModelMap will check

against the backing container to ensure there isn't an element already

present with the same name. This scenario caused different task instance

to be used because of the duplication. It is an error to create tasks

with the same name in both the TaskContainer and ModelMap<Task>.

Check for already registered model in TaskContainer

A ModelMap<Task> is a shadow version of the TaskContainer inside the

software model. Although difficult, it is possible to create an element

in ModelMap<Task> before creating the same element in TaskContainer.

This creates a duplicate instance that, in some case, cause both

instance to be used in the task graph causing issues.

Check for already registered model in TaskContainer

A ModelMap<Task> is a shadow version of the TaskContainer inside the

software model. Although difficult, it is possible to create an element

in ModelMap<Task> before creating the same element in TaskContainer.

This creates a duplicate instance that, in some case, cause both

instance to be used in the task graph causing issues.

Check for already registered model in TaskContainer

A ModelMap<Task> is a shadow version of the TaskContainer inside the

software model. Although difficult, it is possible to create an element

in ModelMap<Task> before creating the same element in TaskContainer.

This creates a duplicate instance that, in some case, cause both

instance to be used in the task graph causing issues.

Check for already registered model in TaskContainer

A ModelMap<Task> is a shadow version of the TaskContainer inside the

software model. Although difficult, it is possible to create an element

in ModelMap<Task> before creating the same element in TaskContainer.

This creates a duplicate instance that, in some case, cause both

instance to be used in the task graph causing issues.

Add `forSubgraph()` API to version constraints

  1. … 5 more files in changeset.
Add `forSubgraph()` API to version constraints

  1. … 5 more files in changeset.
Add `forSubgraph()` API to version constraints

  1. … 6 more files in changeset.
Add `forSubgraph()` API to version constraints

  1. … 6 more files in changeset.
Add `forSubgraph()` API to version constraints

  1. … 5 more files in changeset.
Address review feedback

Rebaseline all performance test scenarios

There seems to be tiny gradual regression in performance, which causes unbearable

flakiness. Rebaselining all scenarios to catch future regressions.

  1. … 16 more files in changeset.
Rebaseline NativeCleanBuildPerformanceTest

It seems to have gradual tiny regressions. Rebaselining.

Rebaseline TaskOutputCachingSwiftPerformanceTest

TaskOutputCachingSwiftPerformanceTest seems to have a small regression

since long time ago. Rebaselining it.

Update released version to latest snapshot

Update library versions in build init to latest for 5.8

Update version to 5.8

Change the instant execution cache bean serialization so that it honors the `writeReplace()` contract for `Serializable` types.

This allows a plugin to use the Guava collection types, which happen to use this contract for serialization. This could be viewed as a work around for the lack of support for multiple classes with the same name (and that is certainly the motivation). However, this provides a potential escape hatch for plugin authors to work around serialization issues. It also provides a nice migration path for re-using the bean serialization in other places, such as task properties, isolated work parameters and tooling models, all of which currently use Java Serialization as the general purpose contract.

Change the instant execution cache bean serialization so that it honors the `writeReplace()` contract for `Serializable` types.

This allows a plugin to use the Guava collection types, which happen to use this contract for serialization. This could be viewed as a work around for the lack of support for multiple classes with the same name (and that is certainly the motivation). However, this provides a potential escape hatch for plugin authors to work around serialization issues. It also provides a nice migration path for re-using the bean serialization in other places, such as task properties, isolated work parameters and tooling models, all of which currently use Java Serialization as the general purpose contract.