ComponentMetadataRuleExecutorTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Move in-memory caches to persistent-cache project

    • -1
    • +1
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 50 more files in changeset.
Move value snapshot implementations to snapshots project

    • -2
    • +2
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 96 more files in changeset.
Move ValueSnapshotter and friends to snapshots project

    • -2
    • +2
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 54 more files in changeset.
Remove unused improve pom support flags

    • -1
    • +1
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 19 more files in changeset.
Use MD5 as the default hashing function

    • -1
    • +1
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 38 more files in changeset.
Move all hashing-related stuff to base-services

- Renamed existing Hasher -> PrimitiveHasher

- Renamed BuildCacheHasher -> Hasher (this is the one that prefixes hashed data with the length of the data to avoid collisions)

    • -2
    • +2
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 72 more files in changeset.
Add pom support feature to cache key for metadata rules

The IMPROVED_POM_SUPPORT feature preview has a direct impact on metadata

resolution. As such, changing that value must invalidate the component

metadata rule cache.

    • -3
    • +3
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 5 more files in changeset.
Rename method to better indicate meaning

The hash value returned by getOriginalContentHash() is the one from the

metadata parsed from a repository. It does not reflect any of the

potential mutations that happened to it at later stages.

The new name indicates this better.

    • -1
    • +1
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 9 more files in changeset.
Update CrossBuildCachingRuleExecutor key value

It now uses the hash of the ValueSnapshot instead of the whole object.

This allows rules taking an Attribute parameter to be cached.

However it also adds a test showing that we do not yet support caching

of rules transforming variant attributes.

    • -2
    • +6
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 5 more files in changeset.
Update CrossBuildCachingRuleExecutor key value

It now uses the hash of the ValueSnapshot instead of the whole object.

This allows rules taking an Attribute parameter to be cached.

However it also adds a test showing that we do not yet support caching

of rules transforming variant attributes.

    • -2
    • +6
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 5 more files in changeset.
Create and wire in a ComponentMetadataRuleExecutor

This enables ComponentMetadataRule execution to be cached

Update the CrossBuildCachingRuleExecutor to work with a set of rule

instead of a single one. This means we cache or miss on a chain of rules

instead of single rules.

Fixes #5526

    • -0
    • +236
    ./ComponentMetadataRuleExecutorTest.groovy
  1. … 32 more files in changeset.