Clone Tools
  • last updated a few minutes ago
Constraints: committers
Constraints: files
Constraints: dates
Address code review comment

  1. … 50 more files in changeset.
Revert `CppTargetMachine` to `CppPlatform`

  1. … 16 more files in changeset.
Break association between current and software model type

Move `NativePlatform` getter to internal type.

    • -0
    • +27
  1. … 61 more files in changeset.
Revert "Move development binary convention to `NativeBasePlugin`"

This reverts commit d8a1739f6df8098c93ccacd80728fed8afb128cb.

  1. … 8 more files in changeset.
Move development binary convention to `NativeBasePlugin`

  1. … 8 more files in changeset.
Decorate all domain collection container for emitting build ops (#7876)

* Update all domain object container with decorator for tracing executed callback actions

* Add decorator to a ll required occurances of DefaultDomainObjectSet

* Keep ctor for DefaultPolymorphicDomainObjectContainer as its used in gradle-idea-ext plugin

* Bring back DefaultDomainObjectSet constructor used by the android plugin

* keep backwards compatibility

  1. … 119 more files in changeset.
Remove unused references to TargetMachineFactory

  1. … 14 more files in changeset.
Move `TargetMachineFactory#host()` to internal API

  1. … 22 more files in changeset.
Generalize variant generating code for all native plugins

  1. … 9 more files in changeset.
Isolate native service and class within `platformNative` project

  1. … 50 more files in changeset.
Move TargetMachineFactory up to a project service

  1. … 47 more files in changeset.
Add support for declaring target machines

  1. … 33 more files in changeset.
Wire in architecture to target machine definition

  1. … 23 more files in changeset.
Change the C++ tooling model builder so that it does not attempt to resolve task dependencies to infer how to build the various C++ binaries, Instead add properties to the C++ project model to allow the builder to query these tasks and build logic to explicitly define what they should be.

  1. … 13 more files in changeset.
Publish inherited exclude rules

Prior to this commit, only exclude rules directly declared on published

configurations (e.g. `apiElements` and `runtimeElements` for Java) were

published in the Ivy descriptor, POM, and Gradle metadata. Now, exclude

rules from superconfigurations (e.g. `api` for Java) are also taken into


Fixes #6766.

  1. … 11 more files in changeset.
Add `HasMultipleValue.finalizeValue()` method to allow the value of a collection property to be made final. Attempts to change the property value after this method is called will fail.

Use this in the native plugins and remove the internal `LockableCollectionProperty` implementation as it is no longer needed.

  1. … 18 more files in changeset.
Quick fix for native dependencies that expose headers as directories

  1. … 2 more files in changeset.
Change `ObjectFactory` so that it creates list and set properties with no initial value, rather than with an empty collection as the initial value.

Added an `empty()` method as a convenience to use when constructing these kinds of properties.

  1. … 29 more files in changeset.
Replace all usages of the property factory methods on `ProjectLayout` and `DefaultTask` with the factory methods on `ObjectFactory`.

  1. … 41 more files in changeset.
Expose the variant name and header directories for each C++ binary in the C++ tooling model.

Rework construction of the native binary models so that the binary names are not formatted and parsed a bunch of times during construction and so do not lose information.

  1. … 31 more files in changeset.
Add a tooling model that provides the main C++ component and test suite of a particular Gradle project.

Moved the C++ tooling model builders into their own project separate from `language-native`.

  1. … 12 more files in changeset.
Start to wire in the C++ tooling model, producing the `componentType` based on the plugins applied to the root project.

    • -49
    • +0
  1. … 4 more files in changeset.
Use immutable file collections whenever possible (#5797)

- Stop DefaultProject implementing FileOperations/ProcessOperations

- Stop BasicScript implementing FileOperations/ProcessOperations

- FileResovler.resolveUri() is not nullable

  1. … 34 more files in changeset.
Normalize `ModuleIdentifier`

This commit reworks the `ComponentModuleIdentifier`/`ComponentModuleSelector`/`ModuleVersionSelector`

classes to use `ModuleIdentifier` under the hood, instead of storing denormalized strings. This has

the advantage that we can reduce the use of the module identifier factory, which is called very

often during dependency resolution. Sharing instances reduces the need for conversions, and makes

comparisons faster.

  1. … 164 more files in changeset.
Interfaces for C++ model using tooling APIs

    • -0
    • +32
    • -0
    • +49
  1. … 11 more files in changeset.
Fix the `cpp-unit-test` plugin so that it makes implementation dependencies of the main component visible to the test suite. Reworked the dependency between the test binary and the binary under test for the `cpp-unit-test` and the `xctest` plugins, so that it is implemented consistently (for later extraction into a base plugin) and is wired in via the various configurations.

  1. … 10 more files in changeset.
Deprecate DeferredConfigurable

Remove it from the publishing plugins, as they no longer require it.

  1. … 11 more files in changeset.
Add common base class for immutable NativePlatform

  1. … 2 more files in changeset.
Publish configuration-wide excludes in Ivy metadata

Resolves #4356.

  1. … 17 more files in changeset.
Add operatingSystem convenience and target builder factory methods

  1. … 6 more files in changeset.