internal

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Renamed src/main/groovy to src/main/java in core

    • -69
    • +0
    ./authentication/AbstractAuthentication.java
    • -35
    • +0
    ./authentication/AllSchemesAuthentication.java
    • -32
    • +0
    ./authentication/AuthenticationInternal.java
    • -30
    • +0
    ./authentication/DefaultAuthenticationContainer.java
    • -21
    • +0
    ./composite/CompositeBuildActionParameters.java
    • -24
    • +0
    ./composite/CompositeBuildActionRunner.java
    • -40
    • +0
    ./composite/CompositeBuildController.java
    • -37
    • +0
    ./composite/CompositeParameters.java
    • -60
    • +0
    ./composite/DefaultGradleParticipantBuild.java
    • -30
    • +0
    ./composite/GradleParticipantBuild.java
    • -41
    • +0
    ./credentials/DefaultAwsCredentials.java
    • -22
    • +0
    ./environment/GradleBuildEnvironment.java
    • -28
    • +0
    ./exceptions/FailureResolutionAware.java
  1. … 2531 more files in changeset.
Replace usage of `String#format` with good old string concatenation

The rationale behind this change is that while `String#format` is usually admitted as good for readability (this is arguable),

in practice it is very bad for performance. Since Java 6, the JVM (the JIT, to be correct) does a pretty good job at optimizing

string concatenation. However, it is only capable to do so if we're using "dirty" string concatenations (using `+`), or `StringBuilder`.

However, usage of `StringBuilder` is not recommended either for 2 reasons:

1. it significantly decreases code readability

2. in Java 9, String concatenation is even more optimized thanks to `invokedynamic`, and code using `StringBuilder` will *not* benefit

from this optimization.

There are sill leftover `String#format` calls in the code, in the following cases:

- the call is used to generate an exception message. That's 90% of the remaining calls.

- the call is obviously a debug message, often used in `toString` (because as we all know, `toString` should only be used for debugging)

- the format includes specific number formatting patterns

- I missed it

    • -1
    • +1
    ./resource/local/GroupedAndNamedUniqueFileStore.java
  1. … 226 more files in changeset.
Fixed setting property values from the dsl when there is no setter and the property is backed by a field.

    • -6
    • +11
    ./metaobject/BeanDynamicObject.java
  1. … 2 more files in changeset.
Apply property and method lookup improvements to more parts of the configure dsl, in particular those that use `ConfigureUtil`, which for example includes the `dependencies { }` closure.

  1. … 8 more files in changeset.
Support authentication for pluginRepositories

  1. … 14 more files in changeset.
Get rid of TaskScopeServices

The `TaskScopeServices` service was created for each task, in hope we could lazily initialize some dependents. Typically,

task inputs and outputs were created using this. However, in practice, they are always eagerly initialized during the

task creation. This leads to both increased memory usage (because each task has a companion service) and performance

penalty (because injecting services as well as calling `get` on them is expensive).

This commit replaces the use of `TaskScopeServices` with eagerly created instances.

+review REVIEW-5921

    • -3
    • +0
    ./service/scopes/ProjectScopeServices.java
    • -58
    • +0
    ./service/scopes/TaskScopeServices.java
  1. … 3 more files in changeset.
Introduce ScriptPluginFactoryProvider SPI

    • -0
    • +4
    ./service/scopes/BuildScopeServices.java
  1. … 3 more files in changeset.
Polish BuildScopeServices

    • -9
    • +7
    ./service/scopes/BuildScopeServices.java
  1. … 1 more file in changeset.
Moved classes related to dispatching property and method requests to live in their own package.

    • -0
    • +198
    ./metaobject/AbstractDynamicObject.java
    • -0
    • +405
    ./metaobject/BeanDynamicObject.java
    • -0
    • +117
    ./metaobject/CompositeDynamicObject.java
    • -0
    • +126
    ./metaobject/ConfigureDelegate.java
    • -0
    • +95
    ./metaobject/DynamicObject.java
    • -0
    • +38
    ./metaobject/GetPropertyResult.java
    • -0
    • +35
    ./metaobject/InvokeMethodResult.java
    • -0
    • +32
    ./metaobject/SetPropertyResult.java
  1. … 42 more files in changeset.
Use a shared constructor cache for all dependency injecting class generators

+review REVIEW-5921

    • -0
    • +6
    ./service/scopes/GlobalScopeServices.java
    • -2
    • +2
    ./service/scopes/GradleScopeServices.java
    • -3
    • +3
    ./service/scopes/ProjectScopeServices.java
  1. … 6 more files in changeset.
Optimize ProjectScopeServices.createLoggingManager()

    • -1
    • +3
    ./service/scopes/GradleScopeServices.java
    • -2
    • +4
    ./service/scopes/ProjectScopeServices.java
  1. … 2 more files in changeset.
Revert introduction of DefaultPluginRepositoryHandler

  1. … 10 more files in changeset.
Introduce DefaultPluginRepositoryHandler

This will be wired up with the `pluginRepositories {}` block to provide

one PluginResolver for each repository defined in that block.

For now, the implementation retains the previous behavior of adding

a Maven repository based on a system property.

  1. … 10 more files in changeset.
Introduce DefaultPluginRepositoryHandler

This will be wired up with the `pluginRepositories {}` block to provide

one PluginResolver for each repository defined in that block.

For now, the implementation retains the previous behavior of adding

a Maven repository based on a system property.

    • -1
    • +3
    ./service/scopes/BuildScopeServices.java
  1. … 11 more files in changeset.
Deprecating LoggingManager.setLevel()

+review REVIEW-5912

    • -26
    • +0
    ./featurelifecycle/DeprecatedFeatureHandler.java
    • -84
    • +0
    ./featurelifecycle/DeprecatedFeatureUsage.java
    • -76
    • +0
    ./featurelifecycle/LoggingDeprecatedFeatureHandler.java
    • -21
    • +0
    ./featurelifecycle/UsageLocationReporter.java
  1. … 31 more files in changeset.
Clear tree visitor cache at the end of the build

- fixes the memory calculation at the end of the build

- cache would be dereferenced and garbage collectable after the

Gradle scope services get closed.

+review REVIEW-5911

  1. … 1 more file in changeset.
Added `ProjectFinder.findProject()` to avoid using unnecessary exceptions

    • -0
    • +5
    ./service/scopes/GradleScopeServices.java
    • -0
    • +5
    ./service/scopes/ProjectScopeServices.java
  1. … 5 more files in changeset.
Changed `DeprecationLogger` to make fewer assumptions about where it is running, so that it can be used in the tooling api client.

    • -3
    • +3
    ./featurelifecycle/LoggingDeprecatedFeatureHandler.java
  1. … 1 more file in changeset.
First stab at allowing Ant task output to be captured.

+review REVIEW-5912

    • -2
    • +2
    ./service/scopes/ProjectScopeServices.java
  1. … 12 more files in changeset.
Change snapshot persistence to use shared tree snapshots

- introduce TreeSnapshot

- implement TreeSnapshotRepository for persistence. Also takes care

of usage tracking and removes a TreeSnapshot when all of the

dependent file collection snapshots have been removed.

- remove updateFrom and applyAllChangesSince from FileCollectionSnapshot

- these methods were only used for creating output snapshot

- replace with createOutputSnapshot method on

OutputFilesCollectionSnapshotter .

- optimized for single use case

- allows reuse of persisted TreeSnapshot instances

+review REVIEW-5911

  1. … 31 more files in changeset.
Moved some more classes and tests to live with the logging event classes.

    • -1
    • +1
    ./progress/DefaultBuildOperationExecutor.java
  1. … 28 more files in changeset.
Moved more classes to live with the logging text output classes.

  1. … 60 more files in changeset.
Moved progress logging and styled text logging interfaces to live in their own packages.

    • -1
    • +1
    ./exceptions/FailureResolutionAware.java
    • -1
    • +1
    ./exceptions/LocationAwareException.java
    • -2
    • +2
    ./progress/DefaultBuildOperationExecutor.java
    • -2
    • +2
    ./progress/ProgressLoggerProvider.java
    • -1
    • +1
    ./service/scopes/BuildScopeServices.java
  1. … 144 more files in changeset.
Moved logging configuration classes referenced from `StartParameter` into a public package.

    • -2
    • +2
    ./service/scopes/BuildScopeServices.java
  1. … 34 more files in changeset.
CompositeContextBuilder is a BuildActionRunner

Previously we were driving GradleLauncher directly.

While this should work, it made it easy not to configure the build correctly:

the StartParameter wasn't being propagated from the calling build,

and the listeners weren't being wired in correctly. The result of this was

that we weren't using the supplied `gradleUserHome`, causing failures on CI.

    • -28
    • +1
    ./composite/CompositeParameters.java
  1. … 4 more files in changeset.
Add delete(Action<? super DeleteSpec>) to Project

+review REVIEW-5852

- Adds a DeleteSpec

- Deprecates and removes references to DeleteAction

- Moves DeleteActionImpl to Deleter

- Updates tests

    • -9
    • +8
    ./resource/local/PathKeyFileStore.java
  1. … 16 more files in changeset.
Removed a usage of Groovy type that was dragging Groovy into the shaded tooling api jar. Switched on the size check for the shaded tooling api jar (it's now slightly smaller than before the breakage).

    • -3
    • +10
    ./featurelifecycle/DeprecatedFeatureUsage.java
  1. … 1 more file in changeset.
Moved internal logging classes from 'core' to 'logging' project.

    • -1
    • +1
    ./exceptions/FailureResolutionAware.java
    • -1
    • +1
    ./exceptions/LocationAwareException.java
    • -1
    • +1
    ./operations/logging/DefaultBuildOperationLogger.java
    • -3
    • +3
    ./progress/DefaultBuildOperationExecutor.java
    • -2
    • +2
    ./progress/ProgressLoggerProvider.java
    • -4
    • +4
    ./service/scopes/BuildScopeServices.java
    • -1
    • +1
    ./service/scopes/ProjectScopeServices.java
    • -1
    • +1
    ./service/scopes/TaskScopeServices.java
  1. … 404 more files in changeset.
Moved `OperationIdentifier` to live with the other progress logging types.

    • -0
    • +1
    ./progress/DefaultBuildOperationExecutor.java
    • -54
    • +0
    ./progress/OperationIdentifier.java
  1. … 12 more files in changeset.
Moved the public logging API classes from `core` to new `logging` project.

    • -4
    • +4
    ./service/scopes/BuildScopeServices.java
  1. … 23 more files in changeset.