model-core

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Add some integration test coverage for new method.

  1. … 1 more file in changeset.
Fix convention mapping applied to a property with a setter with a covariant return type.

Rename method.

  1. … 6 more files in changeset.
Add `HasConfigurableValue.finalizeOnRead()` which allows a plugin to request that the value of a property or file collection become final the next time the value is queried, if not already final.

  1. … 3 more files in changeset.
Expect deprecation warnings in tests

  1. … 55 more files in changeset.
Remove `@Incubating` from internal API

Serialize original parameters instead of the one used by the value source

To avoid serializing a mutated object.

Let value source based providers be used as task inputs

  1. … 5 more files in changeset.
Rename `SystemPropertySource => SystemPropertyValueSource`

  1. … 1 more file in changeset.
Introduce `ProviderFactory#systemProperty` for declaring a system property as a potential build logic input

  1. … 3 more files in changeset.
Introduce `ValueSourceProviderFactory.Listener` and wire instant execution listener

  1. … 4 more files in changeset.
Add TODO

Polish `DefaultValueSourceProviderFactory`

Migrate `DefaultValueSourceProviderFactory` implementation to model-core

  1. … 5 more files in changeset.
Prepare to move `DefaultValueSourceProviderFactory` to model-core

- Move `ProviderFactory` to the Gradle user home scope so it can depend on

`IsolatableFactory`

  1. … 4 more files in changeset.
Introduce `ValueSource` API

Based on the _Westline services_ prototype (#11168).

  1. … 11 more files in changeset.
Rename @FailsWithInstantExecution to @ToBeFixedForInstantExecution

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 858 more files in changeset.
Merge 'shared resources' into 'build services', so that each service can optionally have a maximum number of concurrent usages defined.

When scheduling tasks, Gradle will not start a task that uses a build service when there are already the maximum number of tasks already running for that service.

  1. … 20 more files in changeset.
Rename some methods of `InstantiatorFactory`.

  1. … 8 more files in changeset.
Add `BuildServiceParameters.None` marker type that is used to indicate that a build service does not take any parameters, to match the pattern used in other places.

Extract some validation logic from several places so it can be reused in the places where parameterized isolated objects, such as artifact transforms or build services, are registered.

  1. … 27 more files in changeset.
Annotate integ tests failing with instant execution in various projects

after second round of CI feedback

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 32 more files in changeset.
Extract some reusable logic to determine the parameters type of an isolated implementation type, such as a worker API action or a build service.

  1. … 5 more files in changeset.
Remove @FailsWithInstantExecution on fixed tests in :modelCore

Signed-off-by: Paul Merlin <paul@gradle.com>

Support managed properties of type `DomainObjectSet<T>`.

  1. … 3 more files in changeset.
Archive Kotlin compiler logs

We see test failures on CI that are linked to the Kotlin compiler daemon

We now attempt at archiving these logs whenever a impacted test fails.

Issue gradle/build-tool-flaky-tests#76

  1. … 1 more file in changeset.
Remove unused import

Remove some unnecessary in-memory caching from the "lenient" instantiation scheme. This caching duplicates the caching that already happens in the class generator.

Change instant execution serialization to handle abstract model types.

Reuse the approach used to serialize the state of abstract task types.

  1. … 9 more files in changeset.
Change the implementation of `DeserializationInstantiator` so that services and other Gradle-provided state is injected into the instances it creates, to match the state that is injected into the instances created by the `Instantiator` for the same instantiation scheme.

Change the various `Report` implementations to be abstract and remove some wiring.

Also fix the class generator to handle an abstract getter from a super class whose return type is not supported for managed properties, but which is overridden by another getter whose return type is supported (eg a `Provider<T>` getter overridden by a `Property<T>` getter).

  1. … 3 more files in changeset.