Clone Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
Fix content hash being added on non instantiable classes

Remove logging statements for overlaping inputs/outputs/destroyables

These logging statements don't provide a lot of value and can be very

verbose in the scenario where we have lots of task workers looking for

tasks and lots of tasks blocked by other running tasks.

Use content hash where available to track task actions in build script

This way we lose the original name of the class, but we have a consistent hash to use regardless of the Gradle user home location.

+review REVIEW-6534

Use a String for script content hashes

+review REVIEW-6534

Convert dependency management user guide chapter to Asciidoc

    • -0
    • +1352
    • -1756
    • +0
Implement a content hash for remapped build scripts

This commit adds a `getContentHash` method on classes which have been rewritten by our remapping build script compiler. This

content hash gives access to a hash of the original class, before it has been remapped. The hash is provided as a lazy `HashValue`.

The value of the hash is stored into the class as a static field, in hex format (to simplify the implementation) and is returned

lazily as a `HashValue`, but the generated `HashValue` is not cached (so subsequent calls to `getContentHash` are going to return

a new `HashValue`). This means that if you don't look at the hash value, there's no overhead to adding the content hash, but there

is at reading it.

Remove checks for @destroys logging output as it's not guaranteed to occur

Update wrappers to latest snapshot distro

    • -1
    • +1
  1. … 6 more files in changeset.
Clarify caching with `@OutputFiles`

and `@OutputDirectories`.

+review REVIEW-6535

Merge branch 'release'

Remove locking from output queue

We were using a LinkedBlockingQueue with a limit of Integer.MAX_VALUE

to buffer messages to the client. This means that we were effectively

never blocking and might as well use a non-blocking queue

implementation instead. The benefit of a non-blocking queue is that

it can be lock-free, thus reducing contention and speeding up the build.

Cache build scan plugin only for 4 hours

We have some `latest.integration` version on some agents.

Add missing javadoc and @since tags on RhinoShellExec

Make TypeImplementation a snapshot

+review REVIEW-6534

Always use List as the collection type for rich build operation details/results.

Tweaked API of `SelectedArtifactResults` to make clear what the 'id' means.

Update to latest wrapper and build scan plugin dev version

    • -2
    • +2
Improve the build operation trace to represent the tree information structure.

Moved collection of the artifacts for file dependencies during dependency graph traversal so that it lives alongside and happens via the same visitor API as the collection of the artifacts for other kinds of components.

Isolate during each call to `apply()`

This means we'll be able to do things in parallel and not worry about

stepping on the same state.

Remove unnecessary fields from progress events

This change removes the category from progress and progress

complete events. They are never used in logging because the

category from the start event is used for generated log messages.

Similarly, the timestamp is removed from progress events as it's

never used.

Finally, the description for progress complete events is never


All of these reduce the serialization burden of a now much-larger

number of progress events, resulting in improved performance.

Make all `ValueSnapshot` objects `Isolatable`

This includes making the `ValueSnapshotter` wrap `EnumValueSnapshot`

and `SerializedValueSnapshot` in special `Isolatable*ValueSnaphshot`

implementations which cannot be used for deserialization, but which

are appropriate for passing around in memory.

Removed some filtering from `DefaultLenientConfiguration` as this is taken care of by the artifact sets that it uses.

Moved responsibility for deciding whether a file dependency should be included in the result into `DependencyGraphBuilder`, out of a specific result visitor. This means this logic will be available for all visitors, and now that the graph builder is aware of them, another step towards treating file dependencies as less special.

Added some coverage for handling of file dependencies when consuming a Java project/library/application from another project.

Merge remote-tracking branch 'origin/release'




Try to resolve Kotlin lib sources against buildscript repositories

See #96

Rename actionsType to actionTypes for symmetry with other similar properties.

Emphasize build result in console (#2007)

* Emphasize build results

* Emphasize build results

* Emphasize build results a little less

* Remove comment that no longer applies

* Bold both FAILURE and SUCCESS messages

* Add testing and ensure passivity when setting the 'FAILURE' style

* Code review feedback

Disallow instance fields on abstract classes passed to `ObjectFactory.named()`.