Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Add validation at publication time

This commit introduces validation when generating Gradle

Module Metadata:

- check that there's at least one variant published

- each variant must have at least one attribute

- there shouldn't be duplicate variant names

- each variant must have a different (attributes,capabilities)

combination

Closes #10736

    • -20
    • +27
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 11 more files in changeset.
Add validation at publication time

This commit introduces validation when generating Gradle

Module Metadata:

- check that there's at least one variant published

- each variant must have at least one attribute

- there shouldn't be duplicate variant names

- each variant must have a different (attributes,capabilities)

combination

Closes #10736

    • -20
    • +27
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 11 more files in changeset.
Add validation at publication time

This commit introduces validation when generating Gradle

Module Metadata:

- check that there's at least one variant published

- each variant must have at least one attribute

- there shouldn't be duplicate variant names

- each variant must have a different (attributes,capabilities)

combination

Closes #10736

    • -20
    • +27
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 11 more files in changeset.
Preserve strictly when publishing resolved version

* When the initial version declaration uses `strictly`, then the

resolved version will also be defined as `strictly`.

Fixes #10533

    • -6
    • +164
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 1 more file in changeset.
Preserve strictly when publishing resolved version

* WHen the initial version declaration uses `strictly`, then the

resolved version will also be defined as `strictly`.

Fixes #10533

    • -6
    • +164
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 1 more file in changeset.
Preserve strictly when publishing resolved version

* When the initial version declaration uses `strictly`, then the

resolved version will also be defined as `strictly`.

Fixes #10533

    • -6
    • +164
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 1 more file in changeset.
Fix skipping of empty versions

* When no version is specified, the entire `version` block is to be

skipped. This was not the case due to a type mismatch.

* However if a resolved version is to be written, then the block should

never be skipped.

    • -3
    • +0
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 1 more file in changeset.
Fix skipping of empty versions

* When no version is specified, the entire `version` block is to be

skipped. This was not the case due to a type mismatch.

* However if a resolved version is to be written, then the block should

never be skipped.

    • -3
    • +0
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 1 more file in changeset.
Rework `forSubgraph` as implied by `strictly`

This commit removes a dedicated `forSubgraph` flag

on version constraints, so that it is _implied_ by

strict version constraints. This simplifies the behavior

of `strictly`, making it closer to the intuitive semantics,

while maintaining the ability to fail the build if a

consumer brings an incompatible version in the graph.

As a consequence, _strict dependencies_ now express that

the producer preference overrides whatever is found in

its own dependency graph. It is closer to the "nearest

first" semantics of Maven, while not having its drawbacks

(ordering in particular).

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 77 more files in changeset.
Rework `forSubgraph` as implied by `strictly`

This commit removes a dedicated `forSubgraph` flag

on version constraints, so that it is _implied_ by

strict version constraints. This simplifies the behavior

of `strictly`, making it closer to the intuitive semantics,

while maintaining the ability to fail the build if a

consumer brings an incompatible version in the graph.

As a consequence, _strict dependencies_ now express that

the producer preference overrides whatever is found in

its own dependency graph. It is closer to the "nearest

first" semantics of Maven, while not having its drawbacks

(ordering in particular).

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 79 more files in changeset.
Rework `forSubgraph` as implied by `strictly`

This commit removes a dedicated `forSubgraph` flag

on version constraints, so that it is _implied_ by

strict version constraints. This simplifies the behavior

of `strictly`, making it closer to the intuitive semantics,

while maintaining the ability to fail the build if a

consumer brings an incompatible version in the graph.

As a consequence, _strict dependencies_ now express that

the producer preference overrides whatever is found in

its own dependency graph. It is closer to the "nearest

first" semantics of Maven, while not having its drawbacks

(ordering in particular).

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 77 more files in changeset.
Rework `forSubgraph` as implied by `strictly`

This commit removes a dedicated `forSubgraph` flag

on version constraints, so that it is _implied_ by

strict version constraints. This simplifies the behavior

of `strictly`, making it closer to the intuitive semantics,

while maintaining the ability to fail the build if a

consumer brings an incompatible version in the graph.

As a consequence, _strict dependencies_ now express that

the producer preference overrides whatever is found in

its own dependency graph. It is closer to the "nearest

first" semantics of Maven, while not having its drawbacks

(ordering in particular).

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 77 more files in changeset.
Rework `forSubgraph` as implied by `strictly`

This commit removes a dedicated `forSubgraph` flag

on version constraints, so that it is _implied_ by

strict version constraints. This simplifies the behavior

of `strictly`, making it closer to the intuitive semantics,

while maintaining the ability to fail the build if a

consumer brings an incompatible version in the graph.

As a consequence, _strict dependencies_ now express that

the producer preference overrides whatever is found in

its own dependency graph. It is closer to the "nearest

first" semantics of Maven, while not having its drawbacks

(ordering in particular).

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 77 more files in changeset.
Rework `forSubgraph` as implied by `strictly`

This commit removes a dedicated `forSubgraph` flag

on version constraints, so that it is _implied_ by

strict version constraints. This simplifies the behavior

of `strictly`, making it closer to the intuitive semantics,

while maintaining the ability to fail the build if a

consumer brings an incompatible version in the graph.

As a consequence, _strict dependencies_ now express that

the producer preference overrides whatever is found in

its own dependency graph. It is closer to the "nearest

first" semantics of Maven, while not having its drawbacks

(ordering in particular).

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 77 more files in changeset.
Add test coverage for artifact selectors in GMM

    • -1
    • +11
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 5 more files in changeset.
Add test coverage for artifact selectors in GMM

    • -1
    • +11
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 8 more files in changeset.
Implement subgraph constraints support in resolution engine

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 7 more files in changeset.
Implement subgraph constraints support in resolution engine

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 6 more files in changeset.
Implement subgraph constraints support in resolution engine

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 7 more files in changeset.
Add `inheritSubgraphConstraints()` API to dependencies

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 62 more files in changeset.
Add `inheritSubgraphConstraints()` API to dependencies

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 63 more files in changeset.
Add `forSubgraph()` API to version constraints

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 20 more files in changeset.
Add `forSubgraph()` API to version constraints

    • -2
    • +2
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 20 more files in changeset.
Move utility into `publish` module

    • -0
    • +77
    ./publish/internal/NetworkOperationBackOffAndRetryTest.groovy
  1. … 4 more files in changeset.
Move utility into `publish` module

    • -0
    • +77
    ./publish/internal/NetworkOperationBackOffAndRetryTest.groovy
  1. … 4 more files in changeset.
Rename writer/parser classes for consistency

    • -11
    • +11
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 21 more files in changeset.
Support requested capabilities on external dependencies

This commit adds support for having requested capabilities

part of the module component selector, for external dependencies.

This means that if a component is using Gradle metadata, we can

read requested capabilities and honor them during selection.

This reworks where requested capabilities are stored, and in

particular moves them to the `ComponentSelector`, making them

properly part of the identity of a dependency. As such, two

dependencies requiring two different variants by using distinct

capabilities will now properly appear as two different dependencies

in the dependency graph, instead of two variants of the same

dependency.

    • -1
    • +24
    ./publish/internal/ModuleMetadataFileGeneratorTest.groovy
  1. … 63 more files in changeset.
Allow the services required by a given class to be queried prior to creating any instances of that class. Use this to allow `ArtifactTransformDependencies` to be injected into artifact transforms using any of the service injection patterns (that is, via a constructor or a getter).

    • -1
    • +1
    ./publish/internal/DefaultPublicationContainerTest.groovy
  1. … 127 more files in changeset.
Remove direct usages of `ThreadGlobalInstantiator` from tests, replace with test fixtures.

    • -2
    • +2
    ./publish/internal/DefaultPublicationContainerTest.groovy
  1. … 9 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
    • +2
    ./publish/internal/DefaultPublicationContainerTest.groovy
  1. … 122 more files in changeset.