Clone Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
Initial implementation of component metadata rules allowing modification of variant attributes

This commit introduces metadata rules that support modification of variant attributes. Variant attributes

are specific to each variant and can be found in module metadata. Those are NOT component level attributes,

which could be used during dependency resolution. This will be added in a subsequent commit.

    • -4
    • +11
  1. … 49 more files in changeset.
Create all mutable Ivy module resolve metadata through factory

This will simplify the injection of services through the factory, when we will need the immutable

attributes factory to be pushed to resolve metadata.

    • -2
    • +4
  1. … 26 more files in changeset.
Instantiate mutable Maven metadata through dependency injecting instantiator

This commit prepares the ability to inject services into mutable Maven metadata. This will be

required to inject the immutable attributes factory, as well as the object instantiator and

possibly other services to the immutable Maven resolve metadata. This commit reduces the

number of constructors of `DefaultMavenModuleResolveMetadata`, to make it easier to maintain.

Some tests still create mutable module resolve metadata directly. Ideally, they should also

use the factory.

    • -2
    • +2
  1. … 19 more files in changeset.
Rework `DefaultMutableIvyModuleResolveMetadata` constructors for consistency

Introduce constants where it makes sense and use consistent order of parameters.

    • -1
    • +1
  1. … 5 more files in changeset.
Adjust tests to changes in implementation types

    • -1
    • +1
  1. … 3 more files in changeset.
Adjust implementation of dependency metadata modification for constraints

This introduces shared abstract implementations for handling

dependencies and dependency constraints, where they behave similar.

It injects a second notation parser that produces

DependencyConstraintMetadata instances.

    • -4
    • +5
  1. … 19 more files in changeset.
Remove ability update Excludes on metadata

This functionality wasn't required, and was adding complexity.

    • -1
    • +1
  1. … 6 more files in changeset.
Improve code structure, documentation and test coverage

    • -7
    • +7
  1. … 10 more files in changeset.
Extend metadata rules to allow adjustment of dependencies

This adds:

- withVariant(variant_name) {}:

Choose an existing variant (or

configuration) by name to modify its dependencies.

This hook can later be used to modify attributes of a variant.

- withVariant(variant_name) { withDependencies {} }:

Inside the withDependencies block, existing dependencies can be

removed and new dependencies can be added.

    • -0
    • +122
  1. … 34 more files in changeset.