CompositeBuildDependencyGraphIntegrationTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Merge branch 'release'

    • -1
    • +2
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 2 more files in changeset.
Make paths/names of included builds immutable (#10998)

Changes the “build path” for included builds to be determined at inclusion time based on the directory name, or a user supplied override. Previously, we tried to use the root project name defined in the included build. This caused a lot of complexity due to it not being known until part way through building the included build.

This change also disallows use of `buildSrc` as a project name, as it collides with the `buildSrc` nested build.

    • -1
    • +2
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 72 more files in changeset.
Fix included build path naming and tests

    • -1
    • +2
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 17 more files in changeset.
Revert "Do not emit deprecation warning for deprecated 'force'"

This reverts commit 1db54192db6ef9af5c2fd6b227004eed9a27c07f.

    • -0
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 10 more files in changeset.
Do not emit deprecation warning for deprecated 'force'

Nagging for this deprecation will only start with 6.1 to ease

the migration from 'force' to 'strictly'.

    • -1
    • +0
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 10 more files in changeset.
Do not emit deprecation warning for deprecated 'force'

Nagging for this deprecation will only start with 6.1 to ease

the migration from 'force' to 'strictly'.

    • -1
    • +0
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 10 more files in changeset.
Improve error message when build fails because of missing metadata

Gradle 6.0 removed the "artifact" metadata source by default.

This means that if a module is published _only_ with an artifact,

previous version of Gradle would find it, but 6.0 would fail with

a module missing exception.

The problem is that it's hard to realize that the issue comes

from the change of this default artifact sources.

This commit tries to improve the situation by recognizing that

a failure is related to not finding metadata, and in this case

would suggest that if the metadata is missing, it is still

possible that the jar is present.

The drawback of this approach is that we're unsure: if, for

some reason, the module is _really_ absent, then we gave a

wrong advice. This means, in particular, in case of wrong

coordinates.

    • -0
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 12 more files in changeset.
Improve error message when build fails because of missing metadata

Gradle 6.0 removed the "artifact" metadata source by default.

This means that if a module is published _only_ with an artifact,

previous version of Gradle would find it, but 6.0 would fail with

a module missing exception.

The problem is that it's hard to realize that the issue comes

from the change of this default artifact sources.

This commit tries to improve the situation by recognizing that

a failure is related to not finding metadata, and in this case

would suggest that if the metadata is missing, it is still

possible that the jar is present.

The drawback of this approach is that we're unsure: if, for

some reason, the module is _really_ absent, then we gave a

wrong advice. This means, in particular, in case of wrong

coordinates.

    • -0
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 12 more files in changeset.
Improve error message when build fails because of missing metadata

Gradle 6.0 removed the "artifact" metadata source by default.

This means that if a module is published _only_ with an artifact,

previous version of Gradle would find it, but 6.0 would fail with

a module missing exception.

The problem is that it's hard to realize that the issue comes

from the change of this default artifact sources.

This commit tries to improve the situation by recognizing that

a failure is related to not finding metadata, and in this case

would suggest that if the metadata is missing, it is still

possible that the jar is present.

The drawback of this approach is that we're unsure: if, for

some reason, the module is _really_ absent, then we gave a

wrong advice. This means, in particular, in case of wrong

coordinates.

    • -0
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 12 more files in changeset.
Deprecated `force` on first-level dependencies

This commit deprecates using `force` in favor of using the

new "strictly" behavior. The "force" flag is still used

internally, in particular in case of virtual platforms, but

its usage should be discouraged as we have a solution which

is better now.

    • -0
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 23 more files in changeset.
Deprecated `force` on first-level dependencies

This commit deprecates using `force` in favor of using the

new "strictly" behavior. The "force" flag is still used

internally, in particular in case of virtual platforms, but

its usage should be discouraged as we have a solution which

is better now.

    • -0
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 23 more files in changeset.
Align implementations of artifact identifier display names

DefaultModuleComponentArtifactIdentifier now behaves similar as

ComponentFileArtifactIdentifier (showing the full actual file name).

This means that the artifact name used during reporting now

contains the version at the usual position in the file name.

This way it shows the actual file name for artifacts originating

from pom-only maven repositories (except snapshots, which show the

SNAPSHOT placeholder) and ivy repositories with default pattern.

The motivation for this alignment is to get the same representation for

the same file, independent of whether it was sourced from traditional

or Gradle module metadata.

    • -1
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 32 more files in changeset.
Align implementations of artifact identifier display names

DefaultModuleComponentArtifactIdentifier now behaves similar as

ComponentFileArtifactIdentifier (showing the full actual file name).

This means that the artifact name used during reporting now

contains the version at the usual position in the file name.

This way it shows the actual file name for artifacts originating

from pom-only maven repositories (except snapshots, which show the

SNAPSHOT placeholder) and ivy repositories with default pattern.

The motivation for this alignment is to get the same representation for

the same file, independent of whether it was sourced from traditional

or Gradle module metadata.

    • -1
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 32 more files in changeset.
Adjust tests and samples to new metadata sources defaults

    • -1
    • +0
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 95 more files in changeset.
Adjust tests and samples to new metadata sources defaults

    • -1
    • +0
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 15 more files in changeset.
Adjust tests and samples to new metadata sources defaults

    • -1
    • +0
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 15 more files in changeset.
Adjust tests and samples to new metadata sources defaults

    • -1
    • +0
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 15 more files in changeset.
Let composite-build tests not use deprecated configurations

    • -39
    • +40
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 12 more files in changeset.
Let composite-build tests not use deprecated configurations

    • -39
    • +40
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 12 more files in changeset.
Let composite-build tests not use deprecated configurations

    • -39
    • +40
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 12 more files in changeset.
Use java-library and its configurations in ResolveTestFixture

This mainly influences the composite build tests which intensively

use this fixture.

    • -43
    • +44
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 13 more files in changeset.
Update composite build tests for improved POM support

    • -1
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 1 more file in changeset.
Improve error reporting in case no matching dynamic version is found

This commit improves rendering of errors in case resolution fails because

all versions in a dynamic range are evicted, and that at least one of the

evicted versions was evicted because of attribute matching. The error will

now report the attributes on each tested version, as well as the requested

attributes.

For this, the module not found exception has been updated to carry more

context, and now makes use of the tree formatter for consistency with other

exceptions in the codebase.

    • -2
    • +2
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 37 more files in changeset.
Refactor dependency substitution for included builds for use with implicit included builds

    • -0
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 10 more files in changeset.
Test that included builds can be resolved without executing

    • -0
    • +28
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
Changed the way that the target configuration for a project dependency is calculated, to always select only from the configurations of the target project that have attributes attached, regardless of whether the consumer has defined any attributes or not. Fall back to `default` only when the target project has no configurations with attributes defined.

This introduces a breaking change when consuming the output of a project with the Java plugin applied from a project that does not have the Java plugin applied. Previously, the `default` configuration would be selected, now the `runtimeElements` configuration is selected. However, this is consistent with the case where the consuming project is also using the Java plugin or is using the Android plugin. It also means that custom configurations in these projects will select the same thing as the runtime classpath configuration.

    • -1
    • +20
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 13 more files in changeset.
Merge branch 'release'

    • -1
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 2 more files in changeset.
Fixed tests for changes to error message.

    • -1
    • +1
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 6 more files in changeset.
Don't wrap exceptions from included builds

    • -4
    • +2
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 6 more files in changeset.
Format the project path in display names for `ProjectComponentIdentifier` in the same way that the fully qualified project path is formatted elsewhere.

This logic is still duplicated in `DefaultProjectComponentIdentifier`, and instead the value already calculated for the project should be reused instead of recalculated.

    • -20
    • +27
    ./CompositeBuildDependencyGraphIntegrationTest.groovy
  1. … 9 more files in changeset.