Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Create directories when registering outputs via the runtime API, too (#2929)

Previously we were creating output directories only for outputs registered via task property annotations.

    • -3
    • +3
    ./internal/tasks/TarTaskOutputPackerTest.groovy
    • -3
    • +3
    ./internal/tasks/TaskOutputCacheCommandFactoryTest.groovy
    • -2
    • +2
    ./internal/tasks/TaskOutputPackerUtilsTest.groovy
  1. … 30 more files in changeset.
Simplify time handling internally and for build scans (#2857)

* Don't make TimeProvider Serializable.

This isn't safe and generally doesn't make sense.

* Extract and promote the concept of a build timer.

This was previously not well defined and being overlaid with the concept of when a user/tool requested something, which is not always the same thing.

* Pare down the deprecated org.gradle.util.Clock down to the minimum required.

Internal usage is replaced by a `getStartTime()` directly on BuildRequestContext.

What is left is only kept for backwards compatibility with scans.

* Rename TimeProvider to Clock.

* Move BuildExecutionTimer out of baseServices into core, and into a better package.

* Remove unused.

* Simplify the time package by merging types.

* Prevent the client's build started timestamp from being later than when the provider received the build request.

* Provide a dedicated mechanism for conveying the build start time to build scans.

* Consolidate the ways of formatting durations.

  1. … 179 more files in changeset.
Use our own hashing architecture, take 2 (#2817)

This replaces Guava's hashing. We need this for two reasons:

- it allows the addition of custom hash functions, like BLAKE2b which would not be possible with Guava's closed design

- it fixes a few performance issues that Guava only fixes in version 20 (which we can't upgrade to right now, because we still need to support Java 5 in places)

    • -7
    • +7
    ./internal/tasks/TarTaskOutputPackerTest.groovy
    • -1
    • +1
    ./internal/tasks/TaskOutputCacheCommandFactoryTest.groovy
  1. … 158 more files in changeset.
Use snapshots while packing task outputs (#2756)

We've already collected snapshots after the task, so no need to walk the file system again.

    • -28
    • +73
    ./internal/tasks/TarTaskOutputPackerTest.groovy
    • -2
    • +3
    ./internal/tasks/TaskOutputCacheCommandFactoryTest.groovy
  1. … 15 more files in changeset.
Fix test

    • -1
    • +1
    ./internal/tasks/TaskOutputCacheCommandFactoryTest.groovy
Update snapshots while unpacking task outputs (#2745)

Previously we were naively extracting task outputs, and then snapshot

them in a separate step, just as if the output was generated by some

unknown process. However, during unpacking we already know everything we

need to also do the snapshotting. This speeds up the unpacking process

substantially.

    • -1
    • +5
    ./internal/tasks/TarTaskOutputPackerTest.groovy
    • -9
    • +57
    ./internal/tasks/TaskOutputCacheCommandFactoryTest.groovy
  1. … 45 more files in changeset.
Address review feedback

+review REVIEW-6562

    • -2
    • +6
    ./internal/controller/BuildCacheControllerFactoryTest.groovy
  1. … 4 more files in changeset.
Move DirectoryBuildCacheServiceFactory to build-cache

    • -1
    • +5
    ./local/internal/DirectoryBuildCacheServiceFactoryTest.groovy
  1. … 5 more files in changeset.
Move BuildCacheControllerFactory to build-cache project

+review REVIEW-6562

    • -0
    • +254
    ./internal/controller/BuildCacheControllerFactoryTest.groovy
  1. … 4 more files in changeset.
Move 'org.gradle.caching' to build-cache

+review REVIEW-6562

    • -0
    • +67
    ./MapBasedBuildCacheServiceTest.groovy
    • -0
    • +115
    ./configuration/internal/DefaultBuildCacheConfigurationTest.groovy
    • -0
    • +65
    ./internal/DefaultBuildCacheHasherTest.groovy
    • -0
    • +340
    ./internal/controller/DefaultBuildCacheControllerTest.groovy
    • -0
    • +86
    ./internal/controller/service/LoadTargetTest.groovy
    • -0
    • +84
    ./internal/controller/service/StoreTargetTest.groovy
    • -0
    • +262
    ./internal/tasks/TarTaskOutputPackerTest.groovy
    • -0
    • +149
    ./internal/tasks/TaskOutputCacheCommandFactoryTest.groovy
    • -0
    • +87
    ./internal/tasks/TaskOutputPackerUtilsTest.groovy
    • -0
    • +62
    ./internal/tasks/origin/TaskOutputOriginFactoryTest.groovy
    • -0
    • +83
    ./local/internal/DirectoryBuildCacheServiceFactoryTest.groovy
    • -0
    • +71
    ./local/internal/DirectoryBuildCacheServiceTest.groovy
  1. … 139 more files in changeset.
Split out `Timer` from `EventTimer`

- `Timer` has no wall-clock time, and only measure relative/elapsed time

- `EventTimer` (nee `Clock`) has a wall-clock start time, plus

an elapsed time measure.

- Removed the need for wall-clock time in CountdownTimer

- Renamed `org.gradle.internal.time.Clock` -> `DefaultEventTimer`

Renamed Clock -> EventTimer

    • -6
    • +6
    ./internal/tasks/TaskOutputCacheCommandFactoryTest.groovy
  1. … 22 more files in changeset.