[gradle] 04/06: Merge branch 'experimental'

tony mancill tmancill at debian.org
Sun Mar 25 20:16:59 BST 2018


This is an automated email from the git hooks/post-receive script.

tmancill pushed a commit to branch master
in repository gradle.

commit 45d0314c9f3eb125d5752bc601b40f269f38e801
Merge: 37ffdb4 e375dd1
Author: tony mancill <tmancill at debian.org>
Date:   Sun Mar 25 11:41:58 2018 -0700

    Merge branch 'experimental'

 build.gradle                                       |   47 +-
 buildSrc/settings.gradle                           |   20 +
 .../groovy/org/gradle/build/BuildReceipt.groovy    |   92 ++
 .../org/gradle/build/ClasspathManifest.groovy      |   76 +
 .../build/ReproduciblePropertiesWriter.groovy      |    7 +-
 .../org/gradle/build/docs/Docbook2Xhtml.groovy     |   19 +-
 .../gradle/build/docs/ExtractSamplesTask.groovy    |  100 ++
 .../gradle/build/docs/ExtractSnippetsTask.groovy   |   43 -
 .../gradle/build/docs/SampleLayoutHandler.groovy   |   33 +-
 .../org/gradle/build/docs/SnippetWriter.groovy     |   60 +
 .../build/docs/UserGuideTransformTask.groovy       |   53 +-
 .../groovy/org/gradle/build/docs/Xhtml2Pdf.groovy  |   57 +
 .../docs/dsl/docbook/AssembleDslDocTask.groovy     |    8 +-
 .../build/docs/dsl/docbook/LinkRenderer.java       |   16 +-
 .../dsl/source/GenerateDefaultImportsTask.java     |    5 +-
 .../gradle/modules/ClasspathManifestPatcher.groovy |   33 +-
 .../org/gradle/modules/ExcludeEntryPatcher.groovy  |   39 +-
 .../org/gradle/modules/PatchExternalModules.groovy |   67 +
 .../org/gradle/plugins/pegdown/PegDown.groovy      |   53 +-
 .../org/gradle/testing/CoordinatorBuild.groovy     |   26 +
 .../testing/DistributedPerformanceTest.groovy      |   47 +-
 .../org/gradle/testing/DistributionTest.groovy     |  154 ++
 .../org/gradle/testing/DistributionTest.java       |   25 -
 .../org/gradle/testing/IntegrationTest.groovy      |   63 +
 .../groovy/org/gradle/testing/IntegrationTest.java |   28 -
 .../testing/JUnitXmlTestEventsGenerator.groovy     |  158 ++
 .../groovy/org/gradle/testing/PerformanceTest.java |    5 +-
 .../main/groovy/org/gradle/testing/SmokeTest.java  |    3 -
 .../main/groovy/org/gradle/testing/SoakTest.java   |    3 -
 .../tasks/AbstractProjectGeneratorTask.groovy      |   22 +-
 .../generator/tasks/KtsProjectGeneratorTask.groovy |   42 +
 .../NativeProjectWithDepsGeneratorTask.groovy      |   27 -
 .../generator/tasks/RemoteProject.groovy           |   27 -
 .../build/ReproduciblePropertiesWriterTest.groovy  |   35 +
 .../build/docs/SampleLayoutHandlerTest.groovy      |   18 +-
 .../build/docs/dsl/docbook/LinkRendererTest.groovy |   10 +-
 .../testing/JUnitXmlTestEventsGeneratorTest.groovy |   82 +
 config/checkstyle/suppressions.xml                 |    2 +
 debian/.gitignore                                  |   16 -
 debian/changelog                                   |   61 +-
 debian/control                                     |    5 +-
 debian/gradle-doc.docs                             |    1 +
 debian/gradle.docs                                 |    1 +
 debian/libgradle-core-java.docs                    |    1 +
 debian/libgradle-core-java.links                   |    4 +-
 debian/libgradle-core-java.poms                    |    2 +
 debian/libgradle-plugins-java.docs                 |    1 +
 debian/libgradle-plugins-java.links                |    3 +-
 debian/libgradle-plugins-java.poms                 |    1 -
 debian/patches/33_scala_zinc.diff                  |   71 +-
 debian/patches/34-disable-code-quality.patch       |   89 +
 debian/patches/34_disable_code_quality.diff        |   68 -
 .../Groovy_projects_depends_on_localGroovy.patch   |   18 +-
 ...dd-test-case-for-10-internal_c1fe5e40a76b.patch |   21 +
 .../patches/cast-estimated-runtime-to-long.patch   |   22 +
 debian/patches/commons-io.patch                    |   25 +
 .../dependency-management_depends_on_testkit.patch |   16 +-
 debian/patches/disable-Kotlin.patch                |   21 +
 debian/patches/disable-aws.patch                   |   87 +
 debian/patches/disable_Kotlin.patch                |   13 -
 debian/patches/disable_aws.diff                    |   64 -
 debian/patches/disable_buildSrc_tests.patch        |   20 +-
 debian/patches/docs.diff                           |  184 ---
 debian/patches/docs.patch                          |  223 +++
 debian/patches/drop-http-builder.patch             |  159 ++
 debian/patches/drop-jmh-gradle-plugin.patch        |   49 +
 debian/patches/drop_http-builder.patch             |  151 --
 debian/patches/drop_jmh-gradle-plugin.patch        |   16 -
 debian/patches/eclipse-aether.diff                 |  243 ---
 debian/patches/eclipse-aether.patch                |  270 +++
 debian/patches/fix-classpath-annotation.patch      |   15 -
 debian/patches/generate_pom.diff                   |   22 +-
 debian/patches/groovy-jar.patch                    |   29 +-
 debian/patches/ivy-2.4.0.patch                     |   20 +-
 debian/patches/jansi.patch                         |   39 +
 debian/patches/jcommander.diff                     |   44 -
 debian/patches/jcommander.patch                    |   62 +
 debian/patches/maven-3.3-compatibility.patch       |   58 +-
 debian/patches/nekohtml.diff                       |   15 -
 debian/patches/nekohtml.patch                      |   24 +
 debian/patches/new_APIs_in_3.0.patch               |   19 +-
 debian/patches/relax_warnings.diff                 |   15 +-
 debian/patches/remove-timestamps.patch             |   32 +
 debian/patches/remove_timestamps.patch             |   31 -
 debian/patches/search_system_jar.diff              |   30 +-
 debian/patches/series                              |   35 +-
 ...ort-running-gradle-on-jdk-10-500485df3a18.patch |  173 ++
 ...support-zulu9-version-number_d9c35cf9d74c.patch |   68 +
 debian/patches/upgrade-to-jetty9.patch             |   73 +-
 debian/patches/use-local-artifacts.patch           |  304 ++++
 debian/patches/use_local_artifacts.diff            |  286 ----
 debian/rules                                       |   10 +-
 gradle/buildReceipt.gradle                         |  128 --
 gradle/buildScanInit.gradle                        |    2 +-
 gradle/buildScanUserData.gradle                    |   51 +-
 gradle/buildSplits.gradle                          |    6 +-
 gradle/buildTagging.gradle                         |    4 +-
 gradle/codeQuality.gradle                          |   16 +
 gradle/compile.gradle                              |   39 +-
 gradle/dependencies.gradle                         |    2 +-
 gradle/distributionTesting.gradle                  |   48 +-
 gradle/eclipse.gradle                              |    6 +-
 gradle/groovyProject.gradle                        |   64 +-
 gradle/idea.gradle                                 |   31 +-
 gradle/incomingDistributions.gradle                |    6 +-
 gradle/intTestImage.gradle                         |   17 +-
 gradle/integTest.gradle                            |    3 +
 gradle/java9.gradle                                |    1 +
 gradle/overlappingTaskOutputsStatsInit.gradle      |  115 ++
 gradle/performanceTest.gradle                      |   42 +-
 gradle/providedConfiguration.gradle                |   12 +-
 gradle/publish.gradle                              |   11 -
 gradle/remoteHttpCacheInit.gradle                  |    8 +-
 gradle/taskCacheBuildScanUserData.gradle           |  141 ++
 gradle/taskCacheDetailedDiagnosticsInit.gradle     |   26 +
 gradle/taskCacheDetailedStatsInit.gradle           |  217 +++
 gradle/versioning.gradle                           |   61 +-
 gradle/wrapper.gradle                              |    3 +-
 gradle/wrapper/gradle-wrapper.properties           |    4 +-
 settings.gradle                                    |    4 +-
 subprojects/announce/announce.gradle               |    2 +-
 subprojects/antlr/antlr.gradle                     |    1 +
 .../antlr/AbstractAntlrIntegrationTest.groovy      |   43 +-
 .../antlr/Antlr2PluginIntegrationTest.groovy       |   38 +-
 .../antlr/Antlr3PluginIntegrationTest.groovy       |   14 +-
 .../antlr/Antlr4PluginIntegrationTest.groovy       |   30 +-
 .../IncrementalAntlrTaskIntegrationTest.groovy     |   32 +-
 subprojects/base-services/base-services.gradle     |    4 +
 .../reflect/CachedConstructorsBenchmark.java       |    3 +-
 .../src/main/java/org/gradle/api/Describable.java  |   34 +
 .../src/main/java/org/gradle/internal/Actions.java |    9 +-
 .../java/org/gradle/internal/FastActionSet.java    |  133 ++
 .../main/java/org/gradle/internal/FileUtils.java   |   14 +
 .../main/java/org/gradle/internal/IoActions.java   |   15 +-
 .../java/org/gradle/internal/TimeProvider.java     |   24 -
 .../java/org/gradle/internal/TrueTimeProvider.java |   25 -
 .../internal/classloader/ClassLoaderHasher.java    |    3 +-
 .../classloader/ClassLoaderHierarchyHasher.java    |    7 +-
 .../internal/classloader/ClassPathSnapshotter.java |    2 +-
 .../gradle/internal/classloader/ClasspathUtil.java |   55 +-
 .../ConfigurableClassLoaderHierarchyHasher.java    |   28 +-
 .../DefaultHashingClassLoaderFactory.java          |   10 +-
 .../internal/classloader/FilteringClassLoader.java |    9 +
 .../classloader/HashingClassLoaderFactory.java     |    3 +-
 .../classloader/ImplementationHashAware.java       |   26 +
 .../concurrent/DefaultExecutorFactory.java         |   29 +
 .../internal/concurrent/ExecutorFactory.java       |   15 +-
 .../gradle/internal/concurrent/ExecutorPolicy.java |   22 +
 .../internal/concurrent/StoppableExecutorImpl.java |   35 +-
 .../concurrent/StoppableScheduledExecutor.java     |   22 +
 .../concurrent/StoppableScheduledExecutorImpl.java |   51 +
 .../java/org/gradle/internal/hash/HashUtil.java    |    6 +-
 .../gradle/internal/operations/BuildOperation.java |    3 +
 .../internal/operations/BuildOperationContext.java |   28 +
 .../internal/operations/BuildOperationQueue.java   |    8 +-
 .../internal/operations/BuildOperationWorker.java  |    5 +
 .../operations/DefaultBuildOperationProcessor.java |    2 +-
 .../operations/DefaultBuildOperationQueue.java     |   24 +-
 .../DefaultBuildOperationQueueFactory.java         |    8 +-
 .../DefaultBuildOperationWorkerRegistry.java       |   41 +-
 .../operations/RunnableBuildOperation.java         |    2 +-
 .../org/gradle/internal/process/ArgWriter.java     |    4 +-
 .../internal/reflect/DirectInstantiator.java       |  123 +-
 .../internal/reflect/JavaReflectionUtil.java       |   36 +-
 .../java/org/gradle/internal/reflect/Methods.java  |   34 +-
 .../gradle/internal/reflect/ReflectionCache.java   |   88 +
 .../internal/service/DefaultServiceRegistry.java   |   19 +-
 .../main/java/org/gradle/internal/time/Clock.java  |   79 +
 .../org/gradle/internal/time/CountdownClock.java   |   42 +
 .../org/gradle/internal/time/CountdownTimer.java   |   25 +
 .../org/gradle/internal/time/TimeProvider.java     |   25 +
 .../main/java/org/gradle/internal/time/Timer.java  |   25 +
 .../main/java/org/gradle/internal/time/Timers.java |   37 +
 .../org/gradle/internal/time/TrueTimeProvider.java |   31 +
 .../src/main/java/org/gradle/util/GUtil.java       |   22 +
 .../src/main/java/org/gradle/util/TextUtil.java    |    2 +-
 .../groovy/org/gradle/internal/ActionsTest.groovy  |   89 +
 .../org/gradle/internal/IoActionsTest.groovy       |   54 +-
 ...nfigurableClassLoaderHierarchyHasherTest.groovy |   20 +-
 .../concurrent/DefaultExecutorFactoryTest.groovy   |  223 +++
 .../DefaultBuildOperationProcessorTest.groovy      |   40 +-
 .../DefaultBuildOperationQueueTest.groovy          |   11 +-
 .../DefaultBuildOperationWorkerRegistryTest.groovy |   37 +-
 .../internal/operations/MaxWorkersTest.groovy      |  141 ++
 .../gradle/internal/process/ArgWriterTest.groovy   |    8 +
 .../reflect/DirectInstantiatorCacheTest.groovy     |   25 +-
 .../internal/reflect/DirectInstantiatorTest.groovy |   16 +-
 .../org/gradle/internal/reflect/TypesTest.groovy   |    5 +-
 .../org/gradle/internal/time/ClockTest.groovy      |   83 +
 .../build-cache-http.gradle}                       |    0
 .../internal/HttpBuildCacheIntegrationTest.groovy  |  249 +++
 .../http/internal/HttpBuildCacheTest.groovy        |  176 ++
 .../caching/http/internal/HttpBuildCache.java      |  201 +++
 .../http/internal/HttpBuildCacheFactory.java       |   50 +
 .../plugins/BuildInitPluginIntegrationTest.groovy  |    1 +
 .../GroovyLibraryInitIntegrationTest.groovy        |   14 +-
 .../JavaApplicationInitIntegrationTest.groovy      |  122 ++
 .../plugins/JavaLibraryInitIntegrationTest.groovy  |   16 +-
 .../org/gradle/api/tasks/wrapper/Wrapper.java      |   57 +-
 .../plugins/internal/BuildInitTypeIds.java         |    1 +
 .../plugins/internal/BuildScriptBuilder.java       |  205 +++
 .../DefaultTemplateLibraryVersionProvider.java     |    4 +-
 .../GroovyLibraryProjectInitDescriptor.java        |   30 +-
 .../JavaApplicationProjectInitDescriptor.java      |   51 +
 .../internal/JavaLibraryProjectInitDescriptor.java |   70 +-
 .../internal/JavaProjectInitDescriptor.java        |  126 ++
 .../ProjectLayoutSetupRegistryFactory.java         |   11 +-
 .../ScalaLibraryProjectInitDescriptor.java         |   41 +-
 .../plugins/internal/SimpleTemplateOperation.java  |   11 +-
 .../org/gradle/buildinit/tasks/InitBuild.java      |    2 +-
 .../tasks/templates/build.gradle.template          |    3 +-
 .../groovylibrary/Library.groovy.template          |    5 +-
 .../groovylibrary/LibraryTest.groovy.template      |   12 +-
 .../templates/groovylibrary/build.gradle.template  |   28 -
 .../tasks/templates/javaapp/App.java.template      |   12 +
 .../templates/javaapp/AppTest.groovy.template      |   17 +
 .../tasks/templates/javaapp/AppTest.java.template  |   12 +
 .../templates/javaapp/AppTestNG.java.template      |   12 +
 .../templates/javalibrary/Library.java.template    |    5 +-
 .../javalibrary/LibraryTest.java.template          |    9 +-
 .../javalibrary/LibraryTestNG.java.template        |   11 +-
 .../templates/javalibrary/build.gradle.template    |   30 -
 .../javalibrary/spock-build.gradle.template        |   34 -
 .../javalibrary/testng-build.gradle.template       |   29 -
 .../tasks/templates/library-versions.properties    |    6 +-
 .../templates/scalalibrary/Library.scala.template  |    5 +-
 .../scalalibrary/LibrarySuite.scala.template       |    6 +-
 .../templates/scalalibrary/build.gradle.template   |   29 -
 .../tasks/templates/settings.gradle.template       |    3 +-
 .../plugins/internal/BuildScriptBuilderTest.groovy |  170 ++
 .../BuildScanPluginPerformanceTest.groovy          |   10 +-
 .../fixture/BuildScanPerformanceTestRunner.groovy  |    7 +-
 subprojects/code-quality/code-quality.gradle       |    1 +
 ...CheckstylePluginClasspathIntegrationTest.groovy |  100 ++
 .../CheckstylePluginVersionIntegrationTest.groovy  |   54 +
 .../CheckstyleRelocationIntegrationTest.groovy     |   10 +-
 .../CodeNarcRelocationIntegrationTest.groovy       |   10 +-
 .../FindBugsRelocationIntegrationTest.groovy       |    1 -
 .../JDependRelocationIntegrationTest.groovy        |    1 -
 .../org/gradle/api/plugins/quality/Checkstyle.java |   46 +
 .../api/plugins/quality/CheckstyleExtension.java   |   48 +
 .../api/plugins/quality/CheckstylePlugin.java      |   14 +-
 .../quality/internal/CheckstyleInvoker.groovy      |    6 +-
 .../main/resources/checkstyle-noframes-sorted.xsl  |    2 +-
 .../plugins/quality/CheckstylePluginTest.groovy    |   12 +-
 .../api/plugins/quality/CheckstyleTest.groovy      |    2 +
 .../composite-builds/composite-builds.gradle       |    1 +
 .../CompositeBuildCleanupIntegrationTest.groovy    |   53 +
 ...gurationAttributesResolveIntegrationTest.groovy |  364 ++++
 ...eBuildDependencyArtifactsIntegrationTest.groovy |    4 +-
 ...ositeBuildDependencyCycleIntegrationTest.groovy |   44 +-
 ...ositeBuildDependencyGraphIntegrationTest.groovy |    2 +-
 ...CompositeBuildIdeaProjectIntegrationTest.groovy |   25 +-
 ...BuildMinimalConfigurationIntegrationTest.groovy |    2 +-
 ...iteBuildPluginDevelopmentIntegrationTest.groovy |    4 +-
 ...positeBuildTaskDependencyIntegrationTest.groovy |    4 +-
 ...ildWarningContinuousBuildIntegrationTest.groovy |   74 +
 ...teBuildWarningJavaProjectIntegrationTest.groovy |   91 +
 .../NestedCompositeBuildIntegrationTest.groovy     |   57 +
 .../internal/CompositeBuildIdeProjectResolver.java |   75 +
 .../composite/internal/CompositeBuildServices.java |   11 +-
 .../internal/CompositeBuildTaskDelegate.java       |    2 +-
 .../CompositeProjectComponentArtifactMetadata.java |    7 +
 .../composite/internal/DefaultIncludedBuild.java   |   14 +-
 .../internal/DefaultIncludedBuildExecuter.java     |    2 +-
 .../internal/DefaultIncludedBuildFactory.java      |   25 +-
 .../IncludedBuildDependencyMetadataBuilder.java    |   44 +-
 subprojects/core/core.gradle                       |   37 +-
 .../org/gradle/api/ApplyPluginIntegSpec.groovy     |  115 +-
 .../api/BuildScriptClassPathIntegrationTest.groovy |   43 +
 .../api/BuildScriptExecutionIntegrationSpec.groovy |   14 +
 .../api/InitScriptExecutionIntegrationTest.groovy  |   16 +
 .../SettingScriptExecutionIntegrationSpec.groovy   |   36 +
 .../dsl/NestedConfigureDslIntegrationTest.groovy   |   12 +-
 .../state/TaskTypeUpToDateIntegrationTest.groovy   |   21 +-
 .../ClassLoadersCachingIntegrationTest.groovy      |   20 +-
 .../resource/TextResourceIntegrationTest.groovy    |    2 +
 .../AbstractPathSensitivityIntegrationSpec.groovy  |   24 +
 .../api/tasks/AntArchiveIntegrationTest.groovy     |  128 --
 .../gradle/api/tasks/ArchiveIntegrationTest.groovy |   61 +-
 .../ArchiveTaskPermissionsIntegrationTest.groovy   |    4 +-
 ...CachedCustomTaskExecutionIntegrationTest.groovy |  570 +++++++
 .../CachedPathSensitivityIntegrationTest.groovy    |   11 +-
 .../tasks/CachedRelocationIntegrationTest.groovy   |   24 +-
 ...askExecutionErrorHandlingIntegrationTest.groovy |   96 ++
 .../CachedTaskExecutionIntegrationTest.groovy      |  376 ++---
 .../api/tasks/CachedTaskIntegrationTest.groovy     |  101 ++
 ...entBuildsIncrementalBuildIntegrationTest.groovy |   13 +-
 .../api/tasks/CopyErrorIntegrationTest.groovy      |    2 +-
 .../api/tasks/CopySpecIntegrationSpec.groovy       |   28 +
 .../tasks/CopyTaskChildSpecIntegrationTest.groovy  |   22 +-
 .../api/tasks/CopyTaskIntegrationSpec.groovy       |    1 -
 ...tionTimeTaskConfigurationIntegrationTest.groovy |    7 +-
 .../tasks/GradleBuildTaskIntegrationTest.groovy    |   82 +
 .../tasks/IncrementalBuildIntegrationTest.groovy   |  254 ++-
 ...entalBuildSymlinkHandlingIntegrationTest.groovy |  279 ++++
 ...ropertyAnnotationOverrideIntegrationTest.groovy |  103 ++
 .../ReproducibleArchivesIntegrationTest.groovy     |  368 +++++
 .../TaskInputFilePropertiesIntegrationTest.groovy  |   45 +
 .../TaskInputPropertiesIntegrationTest.groovy      |  106 +-
 ...InputChangesTaskExecutionIntegrationTest.groovy |   76 +
 .../tasks/WritePropertiesIntegrationTest.groovy    |  164 ++
 .../api/tasks/bundling/ZipIntegrationTest.groovy   |    2 +
 .../RuleTaskCreationIntegrationTest.groovy         |    4 +-
 .../BuildScriptClasspathIntegrationSpec.groovy     |    5 +-
 .../AbstractWorkerProcessIntegrationSpec.groovy    |    8 +-
 .../gradle/process/internal/LoggingProcess.java    |   15 +-
 ...ingleRequestWorkerProcessIntegrationTest.groovy |    2 +-
 .../internal/WorkerProcessIntegrationTest.groovy   |  101 +-
 ...rojectBuilderCrossVersionIntegrationTest.groovy |    4 +-
 .../ProjectBuilderIntegrationTest.groovy           |   14 +-
 .../src/main/java/org/gradle/StartParameter.java   |   42 +
 .../main/java/org/gradle/TaskExecutionRequest.java |   10 +
 .../gradle/api/NamedDomainObjectCollection.java    |   11 +
 .../core/src/main/java/org/gradle/api/Project.java |   48 +-
 .../gradle/api/artifacts/ArtifactCollection.java   |   48 +
 .../org/gradle/api/artifacts/ArtifactView.java     |   54 +
 .../api/artifacts/ConfigurablePublishArtifact.java |    4 +-
 .../org/gradle/api/artifacts/Configuration.java    |   69 +-
 .../api/artifacts/ConfigurationPublications.java   |   56 +
 .../gradle/api/artifacts/ConfigurationVariant.java |   46 +
 .../api/artifacts/FileCollectionDependency.java    |   15 +-
 .../gradle/api/artifacts/LenientConfiguration.java |   29 +-
 .../org/gradle/api/artifacts/ModuleDependency.java |   12 +-
 .../org/gradle/api/artifacts/PublishArtifact.java  |    5 +
 .../api/artifacts/ResolvableDependencies.java      |   38 +-
 .../org/gradle/api/artifacts/ResolveException.java |    2 +-
 .../org/gradle/api/artifacts/ResolvedArtifact.java |    5 +-
 .../api/artifacts/ResolvedConfiguration.java       |   15 +-
 .../api/artifacts/SelfResolvingDependency.java     |   10 +-
 .../api/artifacts/component/BuildIdentifier.java   |    2 -
 .../component/ComponentArtifactIdentifier.java     |    2 +-
 .../artifacts/component/ComponentIdentifier.java   |    3 +-
 .../gradle/api/artifacts/dsl/ArtifactHandler.java  |   14 +
 .../api/artifacts/dsl/DependencyHandler.java       |   23 +-
 .../artifacts/result/ArtifactResolutionResult.java |    9 +-
 .../api/artifacts/result/ArtifactResult.java       |   11 +
 .../artifacts/result/ComponentArtifactsResult.java |    2 +-
 .../api/artifacts/result/ComponentResult.java      |    2 +-
 .../api/artifacts/transform/ArtifactTransform.java |   45 +
 .../transform/ArtifactTransformException.java      |   43 +
 .../transform/ArtifactTransformRegistrations.java  |   42 +
 .../transform/ArtifactTransformTargets.java        |   30 +
 .../api/artifacts/transform/package-info.java      |   21 +
 .../java/org/gradle/api/attributes/Attribute.java  |  118 ++
 .../gradle/api/attributes/AttributeContainer.java  |   83 +
 .../api/attributes/AttributeMatchingStrategy.java  |   61 +
 .../gradle/api/attributes/AttributesSchema.java    |   67 +
 .../api/attributes/CompatibilityCheckDetails.java  |   51 +
 .../api/attributes/CompatibilityRuleChain.java     |   75 +
 .../api/attributes/DisambiguationRuleChain.java    |   74 +
 .../org/gradle/api/attributes/HasAttributes.java   |   35 +
 .../api/attributes/HasConfigurableAttributes.java  |   39 +
 .../api/attributes/MultipleCandidatesDetails.java  |   47 +
 .../main/java/org/gradle/api/attributes/Usage.java |   36 +
 .../org/gradle/api/attributes/package-info.java    |   20 +
 .../org/gradle/api/credentials/AwsCredentials.java |   14 +
 .../internal/InternalTaskExecutionListener.java    |    8 +-
 .../internal/TaskOperationDescriptor.java          |   32 +
 .../execution/internal/TaskOperationInternal.java  |   22 +-
 .../main/java/org/gradle/api/file/FileTree.java    |   25 +
 .../gradle/api/file/ReproducibleFileVisitor.java   |   34 +
 .../AbstractPolymorphicDomainObjectContainer.java  |   22 +-
 .../java/org/gradle/api/internal/AbstractTask.java |   16 +-
 .../api/internal/AsmBackedClassGenerator.java      |    4 +-
 .../api/internal/CompositeDomainObjectSet.java     |  173 +-
 .../internal/DefaultDomainObjectCollection.java    |   79 +-
 .../api/internal/DefaultDomainObjectSet.java       |    7 +
 .../DefaultNamedDomainObjectCollection.java        |  111 +-
 .../api/internal/DependencyClassPathProvider.java  |    2 +-
 .../gradle/api/internal/DomainObjectContext.java   |   12 +-
 .../internal/DynamicModulesClassPathProvider.java  |    2 +-
 .../org/gradle/api/internal/GradleInternal.java    |   31 +-
 .../org/gradle/api/internal/PropertiesUtils.java   |   85 +
 .../java/org/gradle/api/internal/SetIterator.java  |   83 +
 .../org/gradle/api/internal/SettingsInternal.java  |    2 +-
 .../gradle/api/internal/TaskInputsInternal.java    |   10 -
 .../java/org/gradle/api/internal/TaskInternal.java |    3 +
 .../api/internal/TaskOutputCachingState.java       |   32 +
 .../gradle/api/internal/TaskOutputsInternal.java   |   79 +-
 .../TypedDomainObjectContainerWrapper.java         |   28 +-
 .../org/gradle/api/internal/WithEstimatedSize.java |   60 +
 .../api/internal/artifacts/ArtifactAttributes.java |   29 +
 .../internal/artifacts/DefaultDependencySet.java   |   25 +-
 .../artifacts/DependencyResolveContext.java        |    3 +
 .../dependencies/AbstractModuleDependency.java     |   11 +-
 .../dependencies/DefaultClientModule.java          |    4 +-
 .../dependencies/DefaultProjectDependency.java     |   57 +-
 .../DefaultSelfResolvingDependency.java            |   36 +-
 .../dependencies/ProjectDependencyInternal.java    |   10 +-
 .../SelfResolvingDependencyInternal.java           |   29 +
 .../DefaultArtifactTransformTargets.java           |   49 +
 .../dsl/dependencies/DefaultDependencyHandler.java |  118 +-
 .../dsl/dependencies/DependencyFactory.java        |    8 +-
 .../artifacts/publish/AbstractPublishArtifact.java |    6 +
 .../artifacts/publish/ArchivePublishArtifact.java  |   16 +-
 .../publish/DecoratingPublishArtifact.java         |  101 ++
 .../artifacts/publish/DefaultPublishArtifact.java  |   13 +
 .../attributes/AttributeContainerInternal.java     |   35 +
 .../attributes/AttributeMatchingRules.java         |   40 +
 .../api/internal/attributes/AttributeValue.java    |  153 ++
 .../attributes/CompatibilityRuleChainInternal.java |   24 +
 .../DefaultAttributeMatchingStrategy.java          |   52 +
 .../attributes/DefaultCompatibilityRuleChain.java  |  107 ++
 .../attributes/DefaultDisambiguationRuleChain.java |   82 +
 .../DefaultImmutableAttributesFactory.java         |  115 ++
 .../DefaultMutableAttributeContainer.java          |  159 ++
 .../DefaultOrderedCompatibilityRule.java           |   47 +
 .../DefaultOrderedDisambiguationRule.java          |   57 +
 .../DisambiguationRuleChainInternal.java           |   23 +
 .../attributes/EqualityCompatibilityRule.java      |   32 +
 .../internal/attributes/ImmutableAttributes.java   |  172 ++
 .../attributes/ImmutableAttributesFactory.java     |   30 +
 .../attributes/SelectAllCompatibleRule.java        |   37 +
 .../org/gradle/api/internal/attributes/Usages.java |   75 +
 .../internal/cache/CrossBuildInMemoryCache.java    |   44 +
 .../cache/CrossBuildInMemoryCacheFactory.java      |  143 ++
 .../cache/DefaultFileContentCacheFactory.java      |  147 ++
 .../cache/DefaultGeneratedGradleJarCache.java      |    2 +-
 .../api/internal/cache/FileContentCache.java       |   32 +
 .../internal/cache/FileContentCacheFactory.java    |   41 +
 .../api/internal/cache/MinimalPersistentCache.java |   64 +-
 .../cache/SingleOperationPersistentStore.java      |   99 --
 .../changedetection/TaskArtifactState.java         |    6 +-
 .../DefaultTaskArtifactStateRepository.java        |   18 +-
 .../changes/NoHistoryArtifactState.java            |    4 +-
 .../ShortCircuitTaskArtifactStateRepository.java   |    4 +-
 .../AbstractNamedFileSnapshotTaskStateChanges.java |   18 +-
 .../rules/DiscoveredInputsTaskStateChanges.java    |    6 +-
 .../rules/InputFilesTaskStateChanges.java          |    6 +-
 .../rules/OutputFilesTaskStateChanges.java         |   23 +-
 .../rules/TaskTypeTaskStateChanges.java            |   25 +-
 .../changedetection/rules/TaskUpToDateState.java   |   13 +-
 .../state/AbstractFileCollectionSnapshotter.java   |  224 +++
 .../state/AbstractNormalizedFileSnapshot.java      |    8 +-
 .../state/BuildScopeFileTimeStampInspector.java    |   40 +
 .../state/CacheBackedFileSnapshotRepository.java   |    2 +-
 .../state/CacheBackedTaskHistoryRepository.java    |   63 +-
 .../changedetection/state/CacheCapSizer.java       |   65 -
 .../changedetection/state/CachingFileHasher.java   |  157 ++
 .../state/CachingFileSnapshotter.java              |  119 --
 .../ClasspathSnapshotNormalizationStrategy.java    |   47 +
 .../state/ClasspathSnapshotter.java                |   25 +
 .../state/CompileClasspathSnapshotter.java         |   26 +
 .../state/CrossBuildFileHashCache.java             |   58 +
 .../state/DefaultClasspathSnapshotter.java         |   53 +
 .../state/DefaultCompileClasspathSnapshotter.java  |   80 +
 .../state/DefaultFileCollectionSnapshot.java       |   24 +-
 .../state/DefaultFileCollectionSnapshotter.java    |  193 ---
 .../DefaultFileCollectionSnapshotterRegistry.java  |   58 +
 .../changedetection/state/DefaultFileDetails.java  |   30 +-
 .../state/DefaultFileSystemMirror.java             |   59 +
 .../DefaultGenericFileCollectionSnapshotter.java   |   33 +
 .../state/DefaultTaskHistoryStore.java             |    7 +-
 .../changedetection/state/DirSnapshot.java         |    8 +-
 .../state/DirectoryTreeDetails.java                |   34 +
 .../state/FileCollectionSnapshot.java              |    9 +-
 .../state/FileCollectionSnapshotter.java           |   17 +-
 .../state/FileCollectionSnapshotterRegistry.java   |   24 +
 .../changedetection/state/FileDetails.java         |   21 +-
 .../changedetection/state/FileHashSnapshot.java    |    8 +-
 .../changedetection/state/FileSnapshot.java        |   23 -
 .../changedetection/state/FileSnapshotter.java     |   40 -
 .../changedetection/state/FileSystemMirror.java    |   36 +
 .../state/FileTimeStampInspector.java              |   98 ++
 .../state/GenericFileCollectionSnapshotter.java    |   23 +
 .../state/GlobalScopeFileTimeStampInspector.java   |   95 ++
 .../state/IgnoredPathFileSnapshot.java             |    8 +-
 .../state/InMemoryDecoratedCache.java              |    3 +-
 .../state/InMemoryTaskArtifactCache.java           |  135 +-
 .../state/IncrementalFileSnapshot.java             |    4 +-
 .../changedetection/state/JvmClassHasher.java      |  159 ++
 .../changedetection/state/MissingFileSnapshot.java |    8 +-
 .../state/MissingFileVisitDetails.java             |   96 --
 .../state/NormalizedFileSnapshot.java              |    4 +-
 ...InsensitiveTaskFilePropertyCompareStrategy.java |    4 +-
 ...erSensitiveTaskFilePropertyCompareStrategy.java |    4 +-
 .../state/OutputFilesCollectionSnapshotter.java    |  116 --
 .../state/OutputFilesSnapshotter.java              |   88 +
 ...ShortLivedProcessInMemoryTaskArtifactCache.java |   35 -
 .../state/SnapshotMapSerializer.java               |   22 +-
 .../state/SnapshotNormalizationStrategy.java       |    2 +-
 .../changedetection/state/TaskExecution.java       |  111 +-
 .../state/TaskExecutionSnapshot.java               |    8 +-
 .../state/TaskFilePropertyCompareStrategy.java     |    6 +-
 ...kFilePropertySnapshotNormalizationStrategy.java |   27 +-
 .../changedetection/state/TaskHistoryStore.java    |   14 +-
 .../internal/classpath/DefaultModuleRegistry.java  |    1 +
 .../api/internal/classpath/EffectiveClassPath.java |    2 +-
 .../internal/collections/FilteredCollection.java   |   56 +-
 .../component/SoftwareComponentInternal.java       |    2 +-
 .../org/gradle/api/internal/component/Usage.java   |   28 -
 .../api/internal/component/UsageContext.java       |   30 +
 .../api/internal/file/AbstractFileResolver.java    |   24 +-
 .../gradle/api/internal/file/AbstractFileTree.java |   32 +-
 .../api/internal/file/BaseDirFileResolver.java     |   15 +-
 .../api/internal/file/CompositeFileTree.java       |   57 +-
 .../api/internal/file/IdentityFileResolver.java    |    6 +
 .../api/internal/file/archive/TarCopyAction.java   |   17 +-
 .../api/internal/file/archive/TarFileTree.java     |    3 +
 .../api/internal/file/archive/ZipCopyAction.java   |   13 +-
 .../api/internal/file/archive/ZipFileTree.java     |    3 +
 .../file/collections/AbstractDirectoryWalker.java  |   79 +
 .../file/collections/DefaultDirectoryWalker.java   |   53 +-
 .../file/collections/DirectoryFileTree.java        |   10 +-
 .../collections/ReproducibleDirectoryWalker.java   |   37 +
 .../file/collections/SingletonFileTree.java        |   11 +-
 .../api/internal/file/copy/CopyActionExecuter.java |    8 +-
 .../internal/file/copy/CopyFileVisitorImpl.java    |   15 +-
 .../api/internal/file/copy/CopySpecActionImpl.java |    8 +-
 .../CopySpecBackedCopyActionProcessingStream.java  |    6 +-
 .../gradle/api/internal/file/copy/FileCopier.java  |    2 +-
 .../file/pattern/AnyWildcardPatternStep.java       |    7 +-
 .../api/internal/file/pattern/AnythingMatcher.java |   40 +
 .../internal/file/pattern/EndOfPathMatcher.java    |    5 +
 .../internal/file/pattern/FixedPatternStep.java    |    5 +
 .../file/pattern/FixedStepPathMatcher.java         |   71 +
 .../file/pattern/FixedStepsPathMatcher.java        |   70 -
 .../internal/file/pattern/GreedyPathMatcher.java   |    5 +
 .../pattern/HasPrefixAndSuffixPatternStep.java     |    5 +
 .../file/pattern/HasPrefixPatternStep.java         |    5 +
 .../file/pattern/HasSuffixPatternStep.java         |    5 +
 .../file/pattern/PatternMatcherFactory.java        |   21 +-
 .../internal/file/pattern/RegExpPatternStep.java   |  111 +-
 .../api/internal/hash/DefaultFileHasher.java       |  113 ++
 .../gradle/api/internal/hash/DefaultHasher.java    |   41 -
 .../org/gradle/api/internal/hash/FileHasher.java   |   51 +
 .../java/org/gradle/api/internal/hash/Hasher.java  |   24 -
 .../initialization/BasicDomainObjectContext.java   |   11 +-
 .../loadercache/ClassLoaderCache.java              |   19 +-
 .../loadercache/DefaultClassLoaderCache.java       |   65 +-
 .../loadercache/HashClassPathSnapshotter.java      |   55 +-
 .../api/internal/project/DefaultProject.java       |   60 +-
 .../api/internal/project/ProjectInternal.java      |   17 +-
 .../project/antbuilder/AntBuilderDelegate.java     |    6 +-
 .../AbstractInputPropertyAnnotationHandler.java    |   67 +
 .../AbstractOutputPropertyAnnotationHandler.java   |   23 +-
 ...tractPluralOutputPropertyAnnotationHandler.java |   23 +-
 .../AnnotationProcessingTaskFactory.java           |    2 +-
 .../ClasspathPropertyAnnotationHandler.java        |   57 +-
 .../CompileClasspathPropertyAnnotationHandler.java |   35 +
 .../DefaultTaskClassValidatorExtractor.java        |  125 +-
 .../InputDirectoryPropertyAnnotationHandler.java   |   40 +-
 .../InputFilePropertyAnnotationHandler.java        |   36 +-
 .../InputFilesPropertyAnnotationHandler.java       |   24 +-
 .../NestedBeanPropertyAnnotationHandler.java       |    2 +-
 ...OutputDirectoriesPropertyAnnotationHandler.java |   10 +-
 .../OutputDirectoryPropertyAnnotationHandler.java  |   25 +-
 .../OutputFilePropertyAnnotationHandler.java       |   29 +-
 .../OutputFilesPropertyAnnotationHandler.java      |   10 +-
 .../OverridingPropertyAnnotationHandler.java       |   25 +
 .../project/taskfactory/TaskClassValidator.java    |   29 +-
 .../taskfactory/TaskPropertyActionContext.java     |   17 +-
 .../project/taskfactory/TaskPropertyInfo.java      |   13 +-
 .../taskfactory/TaskPropertyValidationAccess.java  |    2 +-
 .../resources/StringBackedTextResource.java        |    4 +-
 .../tasks/AbstractTaskOutputPropertySpec.java      |   86 +
 ...tTaskOutputsDeprecatingTaskPropertyBuilder.java |  100 ++
 ...TaskOutputCompositeFilePropertyElementSpec.java |   88 +
 .../tasks/CacheableTaskOutputFilePropertySpec.java |    4 +
 .../tasks/CompositeTaskOutputPropertySpec.java     |   78 +
 ...DefaultCacheableTaskOutputFilePropertySpec.java |   58 +
 .../api/internal/tasks/DefaultTaskContainer.java   |   42 +-
 .../tasks/DefaultTaskInputPropertySpec.java        |  228 +++
 .../api/internal/tasks/DefaultTaskInputs.java      |  209 +--
 .../tasks/DefaultTaskOutputCachingState.java       |   55 +
 .../api/internal/tasks/DefaultTaskOutputs.java     |  397 +----
 .../tasks/NonCacheableTaskOutputPropertySpec.java  |   72 +
 .../internal/tasks/RealizableTaskCollection.java   |    5 +
 .../api/internal/tasks/TaskContainerInternal.java  |    8 +-
 .../api/internal/tasks/TaskDependencies.java       |   34 +
 .../api/internal/tasks/TaskExecutionOutcome.java   |   18 +-
 .../tasks/TaskFilePropertyBuilderInternal.java     |    3 +
 .../api/internal/tasks/TaskFilePropertySpec.java   |    2 +
 .../TaskInputFilePropertyBuilderInternal.java      |    4 +
 .../internal/tasks/TaskInputFilePropertySpec.java  |    1 +
 .../tasks/TaskInputPropertySpecAndBuilder.java     |   20 +
 .../tasks/TaskOutputPropertySpecAndBuilder.java    |   24 +
 .../gradle/api/internal/tasks/TaskOutputsUtil.java |   38 +-
 .../api/internal/tasks/TaskPropertyUtils.java      |    6 +-
 .../api/internal/tasks/TaskStateInternal.java      |   28 +-
 .../tasks/cache/DefaultTaskCacheKeyBuilder.java    |  146 --
 .../internal/tasks/cache/GZipTaskOutputPacker.java |   56 -
 .../tasks/cache/LocalDirectoryTaskOutputCache.java |   83 -
 .../tasks/cache/MapBasedTaskOutputCache.java       |   55 -
 .../internal/tasks/cache/TarTaskOutputPacker.java  |  215 ---
 .../api/internal/tasks/cache/TaskCacheKey.java     |   21 -
 .../internal/tasks/cache/TaskCacheKeyBuilder.java  |   29 -
 .../cache/TaskExecutionStatisticsEventAdapter.java |   63 -
 .../api/internal/tasks/cache/TaskOutputCache.java  |   46 -
 .../tasks/cache/TaskOutputCacheFactory.java        |   23 -
 .../api/internal/tasks/cache/TaskOutputPacker.java |   29 -
 .../api/internal/tasks/cache/TaskOutputReader.java |   24 -
 .../api/internal/tasks/cache/TaskOutputWriter.java |   24 -
 .../tasks/cache/config/DefaultTaskCaching.java     |   63 -
 .../tasks/cache/config/TaskCachingInternal.java    |   24 -
 .../cache/statistics/TaskExecutionStatistics.java  |   61 -
 .../TaskExecutionStatisticsListener.java           |   21 -
 .../internal/tasks/compile/AccessibleMember.java   |   37 +
 .../internal/tasks/compile/AnnotatableMember.java  |   51 +
 .../tasks/compile/AnnotationAnnotationValue.java   |   24 +
 .../internal/tasks/compile/AnnotationMember.java   |   61 +
 .../internal/tasks/compile/AnnotationValue.java    |   36 +
 .../internal/tasks/compile/ApiClassExtractor.java  |   98 ++
 .../internal/tasks/compile/ApiMemberSelector.java  |  242 +++
 .../tasks/compile/ArrayAnnotationValue.java        |   24 +
 .../api/internal/tasks/compile/ClassMember.java    |   45 +
 .../tasks/compile/EnumAnnotationValue.java         |   31 +
 .../api/internal/tasks/compile/FieldMember.java    |   47 +
 .../internal/tasks/compile/InnerClassMember.java   |   45 +
 .../gradle/api/internal/tasks/compile/Member.java  |   51 +
 .../api/internal/tasks/compile/MethodMember.java   |   77 +
 .../compile/MethodStubbingApiMemberAdapter.java    |   85 +
 .../tasks/compile/ParameterAnnotationMember.java   |   38 +
 .../tasks/compile/SimpleAnnotationValue.java       |   24 +
 .../tasks/compile/SortingAnnotationVisitor.java    |   89 +
 .../api/internal/tasks/compile/TypedMember.java    |   38 +
 .../ResolveTaskArtifactStateTaskExecuter.java      |    7 +-
 .../ResolveTaskOutputCachingStateExecuter.java     |   49 +
 .../tasks/execution/SelfDescribingSpec.java        |   52 +
 .../tasks/execution/SkipCachedTaskExecuter.java    |  141 +-
 .../SkipEmptySourceFilesTaskExecuter.java          |    6 +-
 .../tasks/execution/SkipUpToDateTaskExecuter.java  |    9 +-
 .../VerifyNoInputChangesTaskExecuter.java          |   49 +
 .../java/org/gradle/api/invocation/Gradle.java     |   76 +-
 .../api/plugins/PluginInstantiationException.java  |    2 +
 .../org/gradle/api/resources/TextResource.java     |    4 +-
 .../org/gradle/api/tasks/AbstractCopyTask.java     |   18 +-
 .../java/org/gradle/api/tasks/CacheableTask.java   |    2 +-
 .../main/java/org/gradle/api/tasks/Classpath.java  |    3 +
 .../org/gradle/api/tasks/CompileClasspath.java     |   52 +
 .../java/org/gradle/api/tasks/GradleBuild.java     |    8 +-
 .../java/org/gradle/api/tasks/OrderSensitive.java  |    3 +
 .../java/org/gradle/api/tasks/SkipWhenEmpty.java   |    2 +
 .../java/org/gradle/api/tasks/TaskCaching.java     |   47 -
 .../api/tasks/TaskInputFilePropertyBuilder.java    |    6 +
 .../java/org/gradle/api/tasks/TaskOutputs.java     |   93 +-
 .../main/java/org/gradle/api/tasks/TaskState.java  |   10 +
 .../java/org/gradle/api/tasks/WriteProperties.java |  223 +++
 .../api/tasks/bundling/AbstractArchiveTask.java    |   76 +
 .../java/org/gradle/api/tasks/bundling/Tar.java    |    2 +-
 .../java/org/gradle/api/tasks/bundling/Zip.java    |    3 +-
 .../main/java/org/gradle/cache/CacheAccess.java    |   12 +-
 .../main/java/org/gradle/cache/CacheBuilder.java   |    8 +
 .../java/org/gradle/cache/PersistentCache.java     |   10 +-
 .../cache/PersistentIndexedCacheParameters.java    |    2 +-
 .../gradle/cache/internal/CacheAccessWorker.java   |    8 +-
 .../org/gradle/cache/internal/CacheKeyBuilder.java |   90 +
 .../cache/internal/CacheRepositoryServices.java    |    8 +
 .../gradle/cache/internal/DefaultCacheAccess.java  |  202 ++-
 .../gradle/cache/internal/DefaultCacheFactory.java |   24 +-
 .../cache/internal/DefaultCacheKeyBuilder.java     |   94 ++
 .../cache/internal/DefaultFileLockManager.java     |   31 +-
 .../internal/DefaultPersistentDirectoryCache.java  |    2 +-
 .../internal/DefaultPersistentDirectoryStore.java  |   25 +-
 .../java/org/gradle/cache/internal/FileLock.java   |    1 +
 .../cache/internal/MapBackedInMemoryStore.java     |  109 --
 .../cacheops/CacheAccessOperationsStack.java       |   16 +-
 .../cache/internal/cacheops/CacheOperation.java    |    4 +-
 .../internal/cacheops/CacheOperationStack.java     |   13 +-
 .../filelock/DefaultLockStateSerializer.java       |    4 +
 .../filelock/Version1LockStateSerializer.java      |    4 +
 .../main/java/org/gradle/caching/BuildCache.java   |   72 +
 .../org/gradle/caching/BuildCacheEntryReader.java  |   38 +
 .../org/gradle/caching/BuildCacheEntryWriter.java  |   38 +
 .../org/gradle/caching/BuildCacheException.java    |   39 +
 .../java/org/gradle/caching/BuildCacheKey.java     |   32 +
 .../org/gradle/caching/MapBasedBuildCache.java     |   75 +
 .../caching/internal/BuildCacheConfiguration.java  |   46 +
 .../internal/BuildCacheConfigurationInternal.java  |   25 +
 .../gradle/caching/internal/BuildCacheFactory.java |   31 +
 .../caching/internal/BuildCacheKeyBuilder.java     |   32 +
 .../internal/DefaultBuildCacheConfiguration.java   |  110 ++
 .../internal/DefaultBuildCacheKeyBuilder.java      |  234 +++
 .../internal/LenientBuildCacheDecorator.java       |   65 +
 .../caching/internal/LocalDirectoryBuildCache.java |  136 ++
 .../internal/LoggingBuildCacheDecorator.java       |   72 +
 ...tCircuitingErrorHandlerBuildCacheDecorator.java |   97 ++
 .../internal/StagingBuildCacheDecorator.java       |  175 ++
 .../internal/tasks/GZipTaskOutputPacker.java       |   76 +
 .../tasks/OutputPreparingTaskOutputPacker.java     |   87 +
 .../internal/tasks/TarTaskOutputPacker.java        |  292 ++++
 .../tasks/TaskExecutionStatisticsEventAdapter.java |   63 +
 .../caching/internal/tasks/TaskOutputPacker.java   |   30 +
 .../tasks/origin/TaskOutputOriginFactory.java      |   98 ++
 .../tasks/origin/TaskOutputOriginReader.java       |   23 +
 .../tasks/origin/TaskOutputOriginWriter.java       |   23 +
 .../tasks/statistics/TaskExecutionStatistics.java  |   61 +
 .../TaskExecutionStatisticsListener.java           |   21 +
 .../main/java/org/gradle/caching/package-info.java |   20 +
 .../project/BuildScriptProcessor.java              |    7 +-
 .../project/LifecycleProjectEvaluator.java         |   29 +-
 .../internal/DefaultDeploymentRegistry.java        |    6 +
 .../org/gradle/execution/ProjectConfigurer.java    |   11 +
 .../gradle/execution/TaskPathProjectEvaluator.java |   37 +-
 .../java/org/gradle/execution/TaskSelector.java    |   22 +-
 .../commandline/CommandLineTaskParser.java         |    4 +-
 .../taskgraph/AbstractTaskPlanExecutor.java        |   13 +-
 .../taskgraph/DefaultTaskExecutionPlan.java        |   25 +-
 .../taskgraph/DefaultTaskGraphExecuter.java        |   63 +-
 .../taskgraph/ParallelTaskPlanExecutor.java        |    2 +-
 .../org/gradle/groovy/scripts/BasicScript.java     |   63 +-
 .../java/org/gradle/groovy/scripts/Script.java     |   13 +-
 .../internal/BuildScriptDataSerializer.java        |    4 +-
 .../CrossBuildInMemoryCachingScriptClassCache.java |   26 +-
 .../internal/DefaultScriptCompilationHandler.java  |   47 +-
 .../FileCacheBackedScriptClassCompiler.java        |   18 +-
 .../internal/InitialPassStatementTransformer.java  |    2 +-
 .../scripts/internal/ScriptClassCompiler.java      |    3 +-
 .../initialization/BuildRequestMetaData.java       |    1 +
 .../DefaultBuildRequestMetaData.java               |    5 +
 .../DefaultCommandLineConverter.java               |   15 +
 .../initialization/DefaultGradleLauncher.java      |  130 +-
 .../DefaultGradleLauncherFactory.java              |  152 +-
 .../initialization/DefaultProjectDescriptor.java   |    2 +-
 .../org/gradle/initialization/DefaultSettings.java |   14 +-
 .../initialization/DefaultSettingsLoader.java      |    4 +-
 .../org/gradle/initialization/GradleLauncher.java  |   10 +-
 .../initialization/GradleLauncherFactory.java      |   18 -
 .../gradle/initialization/InitScriptHandler.java   |    6 +-
 .../initialization/InstantiatingBuildLoader.java   |   16 +-
 .../gradle/initialization/NestedBuildFactory.java  |   31 +
 .../gradle/initialization/NestedBuildTracker.java  |   42 -
 .../initialization/NotifyingSettingsProcessor.java |   11 +-
 .../ProjectPropertySettingBuildLoader.java         |    4 +-
 .../PropertiesLoadingSettingsProcessor.java        |    4 +-
 .../ScriptEvaluatingSettingsProcessor.java         |   11 +-
 .../initialization/SessionLifecycleListener.java   |   29 +
 .../org/gradle/initialization/SettingsFactory.java |   13 +-
 .../gradle/initialization/SettingsProcessor.java   |    2 +-
 .../buildsrc/BuildSourceBuilder.java               |   33 +-
 .../buildsrc/BuildSrcBuildListenerFactory.java     |   13 +-
 .../internal/DefaultTaskExecutionRequest.java      |   13 +-
 .../authentication/AllSchemesAuthentication.java   |    5 +
 .../authentication/AuthenticationInternal.java     |    2 +
 .../internal/buildevents/BuildResultLogger.java    |    4 +-
 .../buildevents/CacheStatisticsReporter.java       |    6 +-
 .../internal/buildevents/TaskExecutionLogger.java  |   15 +-
 .../DefaultCachedClasspathTransformer.java         |    2 +-
 .../BuildOperationBuildOutputDeleterDecorator.java |   51 +
 .../internal/cleanup/BuildOutputCleanupCache.java  |   29 +
 .../cleanup/BuildOutputCleanupListener.java        |   28 +
 .../cleanup/BuildOutputCleanupRegistry.java        |   32 +
 .../internal/cleanup/BuildOutputDeleter.java       |   24 +
 .../cleanup/DefaultBuildOutputCleanupCache.java    |   81 +
 .../cleanup/DefaultBuildOutputCleanupRegistry.java |   44 +
 .../cleanup/DefaultBuildOutputDeleter.java         |   56 +
 .../composite/CompositeBuildSettingsLoader.java    |    6 +
 .../credentials/DefaultAwsCredentials.java         |    9 +
 .../ConfigurationNotConsumableException.java       |   23 +
 .../DefaultFileSystemChangeWaiterFactory.java      |    8 +-
 .../internal/invocation/BuildController.java       |    5 +
 .../internal/metaobject/BeanDynamicObject.java     |  206 ++-
 .../gradle/internal/metaobject/DynamicObject.java  |   45 +-
 .../gradle/internal/metaobject/MethodAccess.java   |   34 +
 .../gradle/internal/metaobject/MethodMixIn.java    |   26 +
 .../gradle/internal/metaobject/PropertyAccess.java |   51 +
 .../gradle/internal/metaobject/PropertyMixIn.java  |   26 +
 .../internal/progress/BuildOperationDetails.java   |   53 +-
 .../internal/progress/BuildOperationExecutor.java  |   27 +-
 .../internal/progress/BuildOperationInternal.java  |   14 +-
 .../progress/DefaultBuildOperationExecutor.java    |   77 +-
 .../internal/progress/OperationIdGenerator.java    |   46 -
 .../org/gradle/internal/scan/BuildScanRequest.java |   48 +
 .../internal/scan/BuildScanRequestListener.java    |   49 +
 .../internal/scan/DefaultBuildScanRequest.java     |   43 +
 .../org/gradle/internal/scan/package-info.java     |   25 +
 .../service/scopes/BuildScopeServices.java         |   84 +-
 .../service/scopes/BuildSessionScopeServices.java  |   39 +-
 .../service/scopes/GlobalScopeServices.java        |   88 +-
 .../service/scopes/GradleScopeServices.java        |   38 +-
 .../scopes/GradleUserHomeScopeServices.java        |   55 +
 .../service/scopes/ProjectScopeServices.java       |    2 +-
 .../service/scopes/TaskExecutionServices.java      |  177 +-
 .../ErrorHandlingNotationParser.java               |    4 +-
 .../typeconversion/MapNotationConverter.java       |  136 +-
 .../typeconversion/NotationParserBuilder.java      |   30 +-
 .../org/gradle/internal/xml/XmlTransformer.java    |    5 +
 .../java/org/gradle/invocation/DefaultGradle.java  |  122 +-
 .../plugin/use/internal/DefaultPluginRequest.java  |    5 +
 .../use/internal/PluginRequestCollector.java       |    9 +-
 .../use/internal/PluginRequestsSerializer.java     |    4 +-
 .../PluginUseScriptBlockMetadataExtractor.java     |    6 +-
 .../DefaultMultiRequestWorkerProcessBuilder.java   |    2 +-
 .../DefaultSingleRequestWorkerProcessBuilder.java  |    2 +-
 .../worker/DefaultWorkerLoggingProtocol.java       |   41 +
 .../internal/worker/DefaultWorkerProcess.java      |    7 +-
 .../worker/DefaultWorkerProcessBuilder.java        |   45 +-
 .../worker/DefaultWorkerProcessFactory.java        |   15 +-
 .../internal/worker/WorkerLoggingSerializer.java   |   50 +
 .../child/SystemApplicationClassLoaderWorker.java  |   18 +-
 .../worker/child/WorkerLogEventListener.java       |   39 +
 .../worker/child/WorkerLoggingProtocol.java        |   25 +
 .../process/internal/worker/request/Receiver.java  |   10 +-
 .../internal/worker/request/WorkerAction.java      |    8 +-
 .../org/gradle/profile/ProfileEventAdapter.java    |    2 +-
 .../internal/InMemoryCacheFactory.java             |   36 +-
 .../internal/TestBuildScopeServices.java           |   16 +
 .../ProjectSensitiveToolingModelBuilder.java       |   41 -
 .../core/src/main/java/org/gradle/util/Clock.java  |   58 +-
 .../src/main/java/org/gradle/util/GFileUtils.java  |   23 +
 .../core/src/main/java/org/gradle/util/Path.java   |   37 +-
 .../AbstractNamedDomainObjectContainerTest.groovy  |    2 +-
 .../api/internal/BeanWithMixInMethods.groovy       |   50 +
 .../api/internal/BeanWithMixInProperties.groovy    |   63 +
 .../DefaultDomainObjectCollectionTest.java         |   41 +-
 .../api/internal/DefaultDomainObjectSetTest.groovy |   23 +-
 .../DefaultNamedDomainObjectCollectionTest.groovy  |   59 +
 .../DefaultNamedDomainObjectSetSpec.groovy         |  174 ++
 .../internal/DefaultNamedDomainObjectSetTest.java  |  147 +-
 ...aultPolymorphicDomainObjectContainerTest.groovy |   12 +-
 .../DependencyClassPathProviderTest.groovy         |    3 +-
 .../gradle/api/internal/PropertiesUtilsTest.groovy |   86 +
 .../artifacts/DefaultDependencySetTest.groovy      |   54 -
 .../DefaultProjectDependencyTest.groovy            |   19 +-
 .../DefaultSelfResolvingDependencyTest.java        |   11 +-
 .../DefaultDependencyHandlerTest.groovy            |   34 +-
 .../publish/AbstractPublishArtifactTest.groovy     |   62 +
 .../publish/AbstractPublishArtifactTest.java       |   73 -
 .../publish/ArchivePublishArtifactTest.groovy      |    6 +-
 .../publish/DecoratingPublishArtifactTest.groovy   |   58 +
 .../publish/DefaultPublishArtifactTest.groovy      |   64 +
 .../publish/DefaultPublishArtifactTest.java        |   59 -
 .../DefaultAttributeContainerTest.groovy           |  183 ++
 .../attributes/DefaultAttributesSchemaTest.groovy  |  184 +++
 .../DefaultImmutableAttributesFactoryTest.groovy   |  197 +++
 .../CrossBuildInMemoryCacheFactoryTest.groovy      |  115 ++
 .../DefaultFileContentCacheFactoryTest.groovy      |  221 +++
 .../cache/GeneratedGradleJarCacheTest.groovy       |    6 +-
 .../cache/HeapProportionalCacheSizerTest.groovy    |   49 +-
 .../DefaultTaskArtifactStateRepositoryTest.groovy  |   46 +-
 .../rules/AbstractTaskStateChangesTest.groovy      |   74 +
 .../rules/InputFilesTaskStateChangesTest.groovy    |   52 +
 .../rules/OutputFilesTaskStateChangesTest.groovy   |   53 +
 .../rules/TaskTypeTaskStateChangesTest.groovy      |   73 +-
 .../rules/TaskUpToDateStateTest.groovy             |  108 +-
 .../AbstractFileCollectionSnapshotterTest.groovy   |  322 ++++
 ...bstractSnapshotNormalizationStrategyTest.groovy |   41 +-
 .../CacheBackedFileSnapshotRepositoryTest.groovy   |    2 +-
 .../changedetection/state/CacheCapSizerTest.groovy |   68 -
 .../state/CachingFileHasherTest.groovy             |  217 +++
 .../state/CachingFileSnapshotterTest.groovy        |  140 --
 .../state/DefaultClasspathSnapshotterTest.groovy   |   91 +
 .../state/DefaultFileCollectionSnapshotTest.groovy |    6 +-
 .../DefaultFileCollectionSnapshotterTest.groovy    |  360 ----
 .../state/DefaultTaskHistoryStoreTest.groovy       |    6 +-
 .../state/InMemoryTaskArtifactCacheTest.groovy     |   54 +-
 .../api/internal/file/AbstractFileTreeTest.groovy  |   26 +
 .../internal/file/BaseDirFileResolverSpec.groovy   |   29 +-
 .../api/internal/file/CompositeFileTreeTest.java   |   38 +
 .../internal/file/DefaultFileOperationsTest.groovy |    2 +-
 .../internal/file/archive/TarCopyActionSpec.groovy |   13 +-
 .../internal/file/archive/ZipCopyActionTest.groovy |   31 +-
 .../jdk7/Jdk7DirectoryWalkerTest.groovy            |   11 +-
 .../file/copy/CopyActionExecuterTest.groovy        |    2 +-
 .../file/copy/CopyFileVisitorImplTest.groovy       |    4 +-
 .../file/copy/CopySpecActionImplTest.groovy        |    2 +-
 ...SpecBackedCopyActionProcessingStreamTest.groovy |    4 +-
 .../file/copy/DefaultCopySpecResolutionTest.groovy |    3 +-
 .../DuplicateHandlingCopyActionExecutorTest.groovy |   19 +-
 .../file/pattern/FixedStepPathMatcherTest.groovy   |  106 ++
 .../file/pattern/FixedStepsPathMatcherTest.groovy  |  112 --
 .../file/pattern/PatternMatcherFactoryTest.java    |  689 ++++----
 .../DefaultClassLoaderScopeTest.groovy             |    6 +-
 .../loadercache/DefaultClassLoaderCacheTest.groovy |   60 +-
 .../loadercache/DummyClassLoaderCache.java         |    8 +-
 .../loadercache/FileClassPathSnapshotter.java      |   58 -
 .../HashClassPathSnapshotterTest.groovy            |   77 +-
 .../project/DefaultIsolatedAntBuilderTest.groovy   |    8 +-
 .../api/internal/project/DefaultProjectSpec.groovy |   94 ++
 .../api/internal/project/DefaultProjectTest.groovy |   28 +-
 .../antbuilder/AntBuilderMemoryLeakTest.groovy     |   12 +-
 .../ClasspathPropertyAnnotationHandlerTest.groovy  |   35 -
 ...asspathSnapshotNormalizationStrategyTest.groovy |   36 +
 .../DefaultTaskClassInfoStoreTest.groovy           |    5 +-
 .../DefaultTaskClassValidatorExtractorTest.groovy  |  171 ++
 .../internal/tasks/DefaultTaskContainerTest.groovy |   50 +-
 .../internal/tasks/DefaultTaskOutputsTest.groovy   |  176 +-
 .../api/internal/tasks/TaskDependenciesTest.groovy |   37 +
 .../internal/tasks/TaskStateInternalTest.groovy    |    1 +
 .../tasks/cache/TarTaskOutputPackerTest.groovy     |  182 --
 .../TaskExecutionStatisticsEventAdapterTest.groovy |   71 -
 ...esolveTaskOutputCachingStateExecuterTest.groovy |   85 +
 .../execution/SkipCachedTaskExecuterTest.groovy    |  236 ++-
 .../SkipEmptySourceFilesTaskExecuterTest.groovy    |    4 +-
 .../VerifyNoInputChangesTaskExecuterTest.groovy    |   98 ++
 .../gradle/api/tasks/AbstractCopyTaskTest.groovy   |   10 +-
 .../org/gradle/api/tasks/GradleBuildTest.groovy    |   12 +-
 .../cache/internal/CacheAccessWorkerTest.groovy    |    6 +-
 .../cache/internal/DefaultCacheAccessTest.groovy   |  160 +-
 .../internal/DefaultCacheKeyBuilderTest.groovy     |  153 ++
 ...tPersistentDirectoryStoreConcurrencyTest.groovy |    2 +-
 .../cacheops/CacheAccessOperationsStackTest.groovy |   12 +-
 .../cacheops/CacheOperationStackTest.groovy        |   63 +-
 .../gradle/caching/MapBasedBuildCacheTest.groovy   |   67 +
 .../AbstractBuildCacheDecoratorTest.groovy         |   86 +
 .../DefaultBuildCacheKeyBuilderTest.groovy         |   52 +
 .../internal/LenientBuildCacheDecoratorTest.groovy |   47 +
 .../internal/LoggingBuildCacheDecoratorTest.groovy |   27 +
 ...itingErrorHandlerBuildCacheDecoratorTest.groovy |   63 +
 .../internal/StagingBuildCacheDecoratorTest.groovy |  132 ++
 .../tasks/AbstractTaskOutputPackerSpec.groovy      |   80 +
 .../OutputPreparingTaskOutputPackerTest.groovy     |  129 ++
 .../internal/tasks/TarTaskOutputPackerTest.groovy  |  225 +++
 .../TaskExecutionStatisticsEventAdapterTest.groovy |   75 +
 .../origin/TaskOutputOriginFactoryTest.groovy      |   58 +
 .../project/LifecycleProjectEvaluatorTest.groovy   |   18 +-
 .../commandline/CommandLineTaskParserSpec.groovy   |   12 +-
 .../taskgraph/DefaultTaskGraphExecuterSpec.groovy  |  158 +-
 .../taskgraph/DefaultTaskGraphExecuterTest.java    |   18 +-
 .../FileCacheBackedScriptClassCompilerTest.groovy  |   15 +-
 .../DefaultGradleLauncherFactoryTest.groovy        |   51 +-
 .../DefaultGradleLauncherSpec.groovy               |   58 +-
 .../initialization/InitScriptHandlerTest.groovy    |    8 +-
 .../initialization/NestedBuildTrackerTest.groovy   |   74 -
 .../buildsrc/BuildSourceBuilderTest.groovy         |   69 -
 .../DefaultAuthenticationContainerTest.groovy      |    4 +
 .../buildevents/BuildResultLoggerTest.java         |    6 +-
 .../buildevents/CacheStatisticsReporterTest.groovy |    8 +-
 .../buildevents/TaskExecutionLoggerTest.groovy     |   41 +-
 .../DefaultCachedClasspathTransformerTest.groovy   |    3 +-
 .../cleanup/BuildOutputCleanupCacheTest.groovy     |   96 ++
 .../DefaultBuildOutputCleanupRegistryTest.groovy   |   54 +
 .../cleanup/DefaultBuildOutputDeleterTest.groovy   |   94 ++
 .../metaobject/BeanDynamicObjectTest.groovy        |   90 +-
 .../DefaultBuildOperationExecutorTest.groovy       |  214 ++-
 .../service/scopes/BuildScopeServicesTest.groovy   |   28 +-
 .../scopes/BuildSessionScopeServicesTest.groovy    |   25 +
 .../service/scopes/GlobalScopeServicesTest.java    |   31 +-
 .../service/scopes/GradleScopeServicesTest.groovy  |    4 +-
 .../scopes/TaskExecutionServicesTest.groovy        |   88 -
 .../org/gradle/invocation/DefaultGradleSpec.groovy |  401 +++++
 .../org/gradle/invocation/DefaultGradleTest.java   |  322 ----
 .../use/internal/PluginRequestCollectorTest.groovy |    2 +-
 .../src/test/groovy/org/gradle/util/ClockTest.java |   87 -
 .../test/groovy/org/gradle/util/PathTest.groovy    |   19 +-
 .../cache/TestFileContentCacheFactory.java         |   34 +
 .../progress/TestBuildOperationExecutor.java       |   73 +
 .../groovy/org/gradle/util/BinaryDiffUtils.groovy  |   71 +
 .../groovy/org/gradle/util/MockTimeProvider.java   |    8 +-
 .../dependency-management.gradle                   |   34 +-
 ...gurationAttributesResolveIntegrationTest.groovy | 1739 ++++++++++++++++++++
 ...ArtifactAttributeMatchingIntegrationTest.groovy |  382 +++++
 .../ArtifactCollectionIntegrationTest.groovy       |  203 +++
 .../ArtifactDeclarationIntegrationTest.groovy      |  332 +++-
 .../ArtifactDependenciesIntegrationTest.groovy     |   21 -
 .../ArtifactSelectionIntegrationTest.groovy        |  425 +++++
 ...gurationAttributesResolveIntegrationTest.groovy |  517 ------
 ...gurationBuildDependenciesIntegrationTest.groovy |  328 ++++
 .../ConfigurationDefaultsIntegrationTest.groovy    |   65 +
 .../ConfigurationRoleIntegrationTest.groovy        |  207 +++
 ...pendencyHandlerApiResolveIntegrationTest.groovy |   60 +-
 .../DependencyNotationIntegrationSpec.groovy       |    4 +-
 ...ependencyResolutionEventsIntegrationTest.groovy |   33 +-
 .../DirectoryOutputArtifactIntegrationTest.groovy  |  315 ++++
 .../FileDependencyResolveIntegrationTest.groovy    |  207 +++
 .../FilteredConfigurationIntegrationTest.groovy    |  202 +++
 .../JvmLibraryArtifactResolveTestFixture.groovy    |    6 +-
 .../resolve/LazyDownloadsIntegrationTest.groovy    |   74 +
 .../MetadataArtifactResolveTestFixture.groovy      |    9 +-
 .../ProjectDependencyResolveIntegrationTest.groovy |   28 +-
 .../ResolvedArtifactsApiIntegrationTest.groovy     |  290 ++++
 .../ResolvedConfigurationApiIntegrationTest.groovy |   83 +
 .../ResolvedConfigurationIntegrationTest.groovy    |  232 ++-
 .../ResolvedFileOrderingIntegrationTest.groovy     |  177 ++
 .../resolve/ResolvedFilesApiIntegrationTest.groovy |  275 ++++
 .../SelfResolvingDependencyIntegrationTest.groovy  |  129 ++
 ...gurationAttributesResolveIntegrationTest.groovy |   61 +
 ...gurationAttributesResolveIntegrationTest.groovy |  573 +++++++
 ...ependencyResolutionEventsIntegrationTest.groovy |   45 +
 .../UnsupportedConfigurationMutationTest.groovy    |   24 +-
 ...thConfigurationAttributesIntegrationTest.groovy |  295 ++++
 .../ConcurrentBuildsCachingIntegrationTest.groovy  |    2 +
 ...coverFromBrokenResolutionIntegrationTest.groovy |    8 +-
 .../AARFilterArtifactsIntegrationTest.groovy       |   45 +
 .../transform/AARTransformIntegrationTest.groovy   |  175 ++
 .../transform/AARUnfilteredIntegrationTest.groovy  |   66 +
 ...AndroidFilterAndTransformIntegrationTest.groovy |  503 ++++++
 .../transform/ArtifactFilterIntegrationTest.groovy |  290 ++++
 .../ArtifactTransformIntegrationTest.groovy        |  920 +++++++++++
 ...DexDownloadedAarTransformIntegrationTest.groovy |   86 +
 ...DexDownloadedJarTransformIntegrationTest.groovy |   82 +
 ...alAndroidLibraryTransformIntegrationTest.groovy |   93 ++
 ...LocalJavaLibraryTransformIntegrationTest.groovy |   83 +
 .../artifacts/ArtifactDependencyResolver.java      |    7 +-
 .../internal/artifacts/ConfigurationResolver.java  |   15 +-
 .../DefaultDependencyManagementServices.java       |   80 +-
 .../artifacts/DefaultResolvedArtifact.java         |   46 +-
 .../artifacts/DefaultResolvedDependency.java       |  103 +-
 .../internal/artifacts/DefaultResolverResults.java |   84 +-
 .../artifacts/DependencyGraphNodeResult.java       |   32 +
 .../DependencyManagementBuildScopeServices.java    |    9 +-
 .../api/internal/artifacts/ResolverResults.java    |   42 +-
 .../attributes/DefaultArtifactAttributes.java      |   47 +
 .../configurations/ConfigurationInternal.java      |   17 +-
 .../artifacts/configurations/Configurations.java   |    4 +-
 .../configurations/ConfigurationsProvider.java     |    4 +-
 .../configurations/DefaultConfiguration.java       |  505 ++++--
 .../DefaultConfigurationContainer.java             |   32 +-
 .../DefaultConfigurationPublications.java          |  118 ++
 .../artifacts/configurations/DefaultVariant.java   |  104 ++
 .../DetachedConfigurationsProvider.java            |   11 +-
 .../configurations/DirectBuildDependencies.java    |   56 -
 .../configurations/MutationValidator.java          |    4 +-
 .../artifacts/configurations/OutgoingVariant.java  |   30 +
 .../configurations/ResolutionStrategyInternal.java |   25 +
 .../api/internal/artifacts/dsl/ArtifactFile.java   |    3 -
 .../artifacts/dsl/DefaultArtifactHandler.java      |   73 +-
 .../dsl/PublishArtifactNotationParserFactory.java  |   48 +-
 .../ivyservice/ArtifactCollectingVisitor.java      |   45 +
 .../CacheLockingArtifactDependencyResolver.java    |   10 +-
 .../ivyservice/CacheLockingArtifactResolver.java   |    9 +-
 .../artifacts/ivyservice/CacheLockingManager.java  |    4 +-
 .../ivyservice/DefaultCacheLockingManager.java     |   22 +-
 .../ivyservice/DefaultConfigurationResolver.java   |   93 +-
 .../ivyservice/DefaultLenientConfiguration.java    |  388 ++++-
 .../ivyservice/DefaultResolvedConfiguration.java   |   27 +-
 .../ErrorHandlingConfigurationResolver.java        |  124 +-
 ...lfResolvingDependencyConfigurationResolver.java |  115 --
 .../ShortCircuitEmptyConfigurationResolver.java    |   97 +-
 .../DefaultResolvedModuleVersion.java              |    5 +
 .../SingleFileBackedModuleVersionsCache.java       |    6 +-
 ...cheLockReleasingModuleComponentsRepository.java |   10 +-
 .../ivyservice/ivyresolve/ResolveIvyFactory.java   |   10 +-
 .../modulecache/DefaultModuleArtifactsCache.java   |   36 +-
 .../modulecache/DefaultModuleMetaDataCache.java    |   20 +-
 .../ModuleMetadataCacheEntrySerializer.java        |   20 +-
 .../ConfigurationComponentMetaDataBuilder.java     |    4 +-
 ...faultConfigurationComponentMetaDataBuilder.java |   40 +-
 ...ultDependenciesToModuleDescriptorConverter.java |   65 +-
 .../DefaultDependencyDescriptorFactory.java        |    4 +-
 .../DependenciesToModuleDescriptorConverter.java   |    6 +-
 .../dependencies/DependencyDescriptorFactory.java  |    5 +-
 ...ternalModuleIvyDependencyDescriptorFactory.java |    5 +-
 .../IvyDependencyDescriptorFactory.java            |    5 +-
 .../ProjectIvyDependencyDescriptorFactory.java     |    5 +-
 .../CacheLockReleasingProjectArtifactBuilder.java  |    2 +-
 .../DefaultProjectLocalComponentProvider.java      |    5 +-
 .../ProjectDependencyComponentArtifacts.java       |   13 +-
 .../publisher/IvyBackedArtifactPublisher.java      |   18 +-
 .../publisher/IvyXmlModuleDescriptorWriter.java    |    2 +-
 .../resolutionstrategy/DefaultCachePolicy.java     |   21 +-
 .../DefaultComponentSelectionRules.java            |    2 +-
 .../DefaultResolutionStrategy.java                 |   13 +-
 .../DefaultArtifactDependencyResolver.java         |   18 +-
 .../artifact/ArtifactBackedArtifactSet.java        |   85 +
 .../resolveengine/artifact/ArtifactSet.java        |   11 +-
 .../resolveengine/artifact/ArtifactVisitor.java    |   43 +
 .../BuildDependenciesOnlyVisitedArtifactSet.java   |   82 +
 .../artifact/CompositeArtifactSet.java             |   73 +
 .../resolveengine/artifact/DefaultArtifactSet.java |  124 +-
 .../artifact/DefaultResolvedArtifactResults.java   |   84 +-
 .../artifact/DefaultResolvedArtifactsBuilder.java  |  130 +-
 .../artifact/DependencyArtifactsVisitor.java       |    4 +-
 .../LocalFileDependencyBackedArtifactSet.java      |   50 +
 .../artifact/NoBuildDependenciesArtifactSet.java   |   52 +
 .../artifact/ResolvedArtifactResults.java          |   25 -
 .../artifact/ResolvedArtifactSet.java              |   59 +
 .../resolveengine/artifact/ResolvedArtifacts.java  |   24 -
 .../artifact/ResolvedArtifactsBuilder.java         |   20 -
 .../artifact/ResolvedArtifactsGraphVisitor.java    |   43 +-
 .../resolveengine/artifact/ResolvedVariant.java    |   23 +
 .../artifact/SelectedArtifactResults.java          |   29 +
 .../artifact/SelectedArtifactSet.java              |   54 +
 .../artifact/SelectedFileDependencyResults.java    |   41 +
 .../resolveengine/artifact/VisitedArtifactSet.java |   38 +
 .../artifact/VisitedArtifactsResults.java          |   31 +
 .../artifact/VisitedFileDependencyResults.java     |   32 +
 .../graph/CompositeDependencyArtifactsVisitor.java |   11 +-
 .../graph/CompositeDependencyGraphVisitor.java     |   11 +-
 .../graph/DependencyGraphBuilder.java              |  102 +-
 .../resolveengine/graph/DependencyGraphEdge.java   |    8 +-
 .../resolveengine/graph/DependencyGraphNode.java   |    6 +-
 .../graph/DependencyGraphSelector.java             |   35 +
 .../graph/DependencyGraphVisitor.java              |    9 +-
 .../DefaultResolvedConfigurationBuilder.java       |   12 +-
 .../oldresult/DefaultResolvedGraphResults.java     |    8 +-
 .../DefaultTransientConfigurationResults.java      |   18 +-
 ...esolvedConfigurationDependencyGraphVisitor.java |   15 +-
 .../oldresult/ResolvedContentsMapping.java         |   29 -
 .../oldresult/ResolvedGraphResults.java            |    2 +-
 .../oldresult/TransientConfigurationResults.java   |    6 +-
 .../TransientConfigurationResultsBuilder.java      |   35 +-
 .../TransientConfigurationResultsLoader.java       |   33 +-
 .../DefaultResolvedLocalComponentsResult.java      |   42 -
 ...efaultResolvedLocalComponentsResultBuilder.java |   53 -
 .../ResolvedLocalComponentsResult.java             |    3 -
 .../ResolvedLocalComponentsResultBuilder.java      |   26 -
 .../ResolvedLocalComponentsResultGraphVisitor.java |   41 +-
 .../result/BuildIdentifierSerializer.java          |    4 +-
 .../result/ComponentIdentifierSerializer.java      |   20 +-
 .../result/ComponentSelectorSerializer.java        |    4 +-
 .../result/DependencyResultSerializer.java         |   14 +-
 .../FileDependencyCollectingGraphVisitor.java      |  107 ++
 .../result/StreamingResolutionResultBuilder.java   |   50 +-
 .../resolveengine/store/CachedStoreFactory.java    |   11 +-
 .../store/ResolutionResultsStoreFactory.java       |    9 +-
 .../ComponentArtifactIdentifierSerializer.java     |   20 +-
 .../ComponentArtifactMetadataSerializer.java       |   20 +-
 .../query/DefaultArtifactResolutionQuery.java      |   19 +-
 .../transport/RepositoryTransportFactory.java      |    5 +-
 .../result/DefaultResolvedArtifactResult.java      |   17 +-
 .../result/DefaultUnresolvedArtifactResult.java    |   17 +-
 .../transform/ArtifactAttributeMatcher.java        |   38 +
 .../transform/ArtifactAttributeMatchingCache.java  |  117 ++
 .../transform/ArtifactTransformRegistration.java   |   94 ++
 .../ArtifactTransformRegistrationsInternal.java    |   24 +
 .../artifacts/transform/ArtifactTransforms.java    |   32 +
 .../DefaultArtifactTransformRegistrations.java     |   58 +
 .../transform/DefaultArtifactTransformTargets.java |   50 +
 .../transform/DefaultArtifactTransforms.java       |  221 +++
 .../attributes/AttributesSchemaInternal.java       |   30 +
 .../attributes/DefaultAttributesSchema.java        |  148 ++
 .../CompositeBuildIdeProjectResolver.java          |   74 -
 .../DependencyClassPathNotationConverter.java      |    3 +-
 .../runtimeshaded/RuntimeShadedJarCreator.java     |   61 +-
 .../AmbiguousConfigurationSelectionException.java  |  152 ++
 .../NoMatchingConfigurationSelectionException.java |   65 +
 .../AbstractModuleComponentResolveMetadata.java    |   47 +-
 .../model/DefaultIvyModulePublishMetadata.java     |   15 +-
 .../DefaultModuleComponentArtifactMetadata.java    |   11 +
 .../external/model/FixedComponentArtifacts.java    |    7 +-
 .../external/model/IvyDependencyMetadata.java      |    3 +-
 .../external/model/MavenDependencyMetadata.java    |    3 +-
 .../model/MetadataSourcedComponentArtifacts.java   |    6 +-
 .../model/BuildableLocalComponentMetadata.java     |   30 +-
 .../model/ComponentFileArtifactIdentifier.java     |   62 +
 .../local/model/DefaultLocalComponentMetadata.java |  217 ++-
 .../model/DefaultProjectDependencyMetadata.java    |    5 +-
 .../model/DslOriginDependencyMetadataWrapper.java  |    5 +-
 .../local/model/LocalComponentMetadata.java        |    7 +
 .../local/model/LocalConfigurationMetadata.java    |   13 +-
 .../local/model/LocalFileDependencyMetadata.java   |   40 +
 .../local/model/MissingLocalArtifactMetadata.java  |   16 +-
 .../model/OpaqueComponentArtifactIdentifier.java   |   62 +
 .../PublishArtifactLocalArtifactMetadata.java      |   10 +-
 .../component/model/ComponentArtifactMetadata.java |    6 +
 .../component/model/ComponentArtifacts.java        |    7 +-
 .../component/model/ComponentAttributeMatcher.java |  251 +++
 .../component/model/ComponentResolveMetadata.java  |    2 +
 .../component/model/ConfigurationMetadata.java     |   21 +-
 .../component/model/DefaultIvyArtifactName.java    |   10 +
 .../DefaultModuleDescriptorArtifactMetadata.java   |    6 +
 .../component/model/DefaultVariantMetadata.java    |   41 +
 .../component/model/DependencyMetadata.java        |    3 +-
 .../model/LocalComponentDependencyMetadata.java    |  190 ++-
 .../internal/component/model/VariantMetadata.java  |   30 +
 .../resource/cached/ivy/AbstractCachedIndex.java   |   12 +-
 .../ArtifactAtRepositoryCachedArtifactIndex.java   |   21 +-
 .../DefaultCacheAwareExternalResourceAccessor.java |    2 +-
 .../artifacts/DefaultResolvedArtifactTest.groovy   |   22 +-
 .../artifacts/DefaultResolvedDependencySpec.groovy |   27 +-
 .../artifacts/DefaultResolvedDependencyTest.java   |   72 +-
 .../artifacts/DefaultResolverResultsSpec.groovy    |   33 +-
 .../DefaultConfigurationContainerSpec.groovy       |   59 +-
 .../DefaultConfigurationContainerTest.groovy       |   13 +-
 .../DefaultConfigurationPublicationsTest.groovy    |   62 +
 .../configurations/DefaultConfigurationSpec.groovy |  725 +++++---
 .../internal/artifacts/dsl/ArtifactFileTest.groovy |   11 +-
 .../dsl/DefaultArtifactHandlerTest.groovy          |   51 +-
 ...lishArtifactNotationConverterFactoryTest.groovy |  122 --
 ...PublishArtifactNotationParserFactoryTest.groovy |  151 ++
 ...cheLockingArtifactDependencyResolverTest.groovy |   15 +-
 .../DefaultLenientConfigurationTest.groovy         |   82 +-
 .../ErrorHandlingConfigurationResolverTest.groovy  |   90 +-
 .../IvyXmlModuleDescriptorWriterTest.groovy        |    2 +-
 ...lvingDependencyConfigurationResolverTest.groovy |  137 --
 ...ortCircuitEmptyConfigurationResolverSpec.groovy |   88 +-
 ...onfigurationComponentMetaDataBuilderTest.groovy |   74 +-
 ...endenciesToModuleDescriptorConverterTest.groovy |   64 +-
 .../DependencyGraphBuilderTest.groovy              |   53 +-
 .../artifact/ArtifactBackedArtifactSetTest.groovy  |   97 ++
 .../artifact/CompositeArtifactSetTest.groovy       |   63 +
 ...LocalFileDependencyBackedArtifactSetTest.groovy |   55 +
 .../NoBuildDependenciesArtifactSetTest.groovy      |   46 +
 .../result/DependencyResultSerializerTest.groovy   |   28 +-
 .../StreamingResolutionResultBuilderTest.groovy    |   75 +-
 .../DefaultArtifactResolutionQueryTest.groovy      |    2 +-
 .../RepositoryTransportFactoryTest.groovy          |   39 +-
 .../ArtifactAttributeMatchingCacheTest.groovy      |  144 ++
 .../transform/DefaultArtifactTransformsTest.groovy |  313 ++++
 ...DependencyClassPathNotationConverterTest.groovy |  101 +-
 .../DependencyMapNotationConverterTest.groovy      |   30 +
 .../RuntimeShadedJarCreatorTest.groovy             |   70 +-
 ...stractModuleComponentResolveMetadataTest.groovy |   29 +-
 .../DefaultIvyModulePublishMetadataTest.groovy     |    2 +-
 .../model/IvyDependencyMetadataTest.groovy         |   45 +-
 .../model/MavenDependencyMetadataTest.groovy       |   22 +-
 .../ComponentFileArtifactIdentifierTest.groovy     |   44 +
 .../model/DefaultLocalComponentMetadataTest.groovy |  166 +-
 .../model/MissingLocalArtifactMetadataTest.groovy  |   29 +-
 .../OpaqueComponentArtifactIdentifierTest.groovy   |   37 +
 .../model/ComponentAttributeMatcherTest.groovy     |  106 ++
 .../model/DefaultDependencyMetadataTest.groovy     |    3 +
 .../LocalComponentDependencyMetadataTest.groovy    |  459 +++++-
 .../DefaultArtifactResolutionCacheTest.groovy      |   11 +-
 ...ltCacheAwareExternalResourceAccessorTest.groovy |   10 +-
 .../fixtures/resolve/ResolveTestFixture.groovy     |  141 +-
 .../ProjectReportsPluginIntegrationSpec.groovy     |  101 ++
 .../ProjectReportsPluginIntegrationTest.java       |   33 -
 .../HtmlDependencyReportTaskIntegrationTest.groovy |   81 +-
 ...pendencyInsightReportTaskIntegrationTest.groovy |   36 +
 .../DependencyReportTaskIntegrationTest.groovy     |   50 +-
 .../TaskReportTaskIntegrationTest.groovy           |  345 +++-
 .../dependencies/HtmlDependencyReportTask.java     |   11 +-
 .../internal/JsonProjectDependencyRenderer.java    |   26 +-
 .../internal/ComponentRenderableDependency.java    |    4 +-
 .../DependentComponentsRenderableDependency.java   |    4 +-
 .../api/tasks/diagnostics/AbstractReportTask.java  |    9 +
 .../diagnostics/DependencyInsightReportTask.java   |   17 +-
 .../api/tasks/diagnostics/TaskReportTask.java      |    9 +-
 .../AggregateMultiProjectTaskReportModel.java      |   25 +-
 .../internal/SingleProjectTaskReportModel.java     |   67 +-
 .../tasks/diagnostics/internal/TaskDetails.java    |    6 -
 .../diagnostics/internal/TaskDetailsFactory.java   |    9 -
 .../diagnostics/internal/TaskReportRenderer.java   |   18 -
 .../AsciiDependencyReportRenderer.java             |   25 +-
 .../internal/graph/DependencyGraphRenderer.java    |   21 +-
 .../diagnostics/internal/graph/LegendRenderer.java |   50 +
 .../internal/graph/SimpleNodeRenderer.java         |   16 +-
 .../nodes/AbstractRenderableModuleResult.java      |    4 +-
 .../graph/nodes/DependencyReportHeader.java        |    4 +-
 .../internal/graph/nodes/RenderableDependency.java |    8 +-
 .../graph/nodes/RenderableDependencyResult.java    |    4 +-
 .../RenderableUnresolvedDependencyResult.java      |    4 +-
 .../internal/graph/nodes/RequestedVersion.java     |    4 +-
 .../nodes/UnresolvableConfigurationResult.java     |  101 ++
 .../api/tasks/diagnostics/TaskReportTaskTest.java  |    3 -
 ...AggregateMultiProjectTaskReportModelTest.groovy |    4 +-
 .../SingleProjectTaskReportModelTest.groovy        |   67 +-
 .../internal/TaskDetailsFactoryTest.groovy         |    2 -
 .../internal/TaskReportRendererTest.groovy         |   15 +-
 .../AsciiDependencyReportRendererTest.groovy       |    6 +-
 .../graph/DependencyGraphRendererSpec.groovy       |    7 +-
 .../AbstractRenderableDependencyResultSpec.groovy  |    2 +-
 .../internal/graph/nodes/SimpleDependency.java     |    6 +-
 subprojects/distributions/distributions.gradle     |   49 +-
 .../gradle/AllDistributionIntegrationSpec.groovy   |    4 +-
 .../org/gradle/DistributionIntegrationSpec.groovy  |   61 +-
 .../gradle/TestDistributionIntegrationTest.groovy  |  120 ++
 subprojects/distributions/src/toplevel/NOTICE      |    2 +-
 .../distributions/src/toplevel/changelog.txt       |    4 -
 subprojects/docs/docs.gradle                       |  125 +-
 subprojects/docs/src/docs/dsl/dsl.xml              |    6 +
 ....gradle.api.artifacts.dsl.DependencyHandler.xml |    5 +-
 .../org.gradle.api.plugins.quality.Checkstyle.xml  |   10 +-
 ...dle.api.plugins.quality.CheckstyleExtension.xml |   10 +-
 .../dsl/org.gradle.api.tasks.WriteProperties.xml   |   65 +
 ...adle.api.tasks.bundling.AbstractArchiveTask.xml |   10 +-
 ...org.gradle.api.tasks.compile.CompileOptions.xml |    4 +
 .../src/docs/dsl/org.gradle.plugins.ear.Ear.xml    |    9 +-
 ....testing.jacoco.plugins.JacocoTaskExtension.xml |    4 +-
 ...ing.jacoco.tasks.JacocoCoverageVerification.xml |   43 +
 ...rg.gradle.testing.jacoco.tasks.JacocoReport.xml |   28 +-
 ...radle.testing.jacoco.tasks.JacocoReportBase.xml |   62 +
 .../docs/src/docs/release/content/script.js        |   24 +-
 subprojects/docs/src/docs/release/notes.md         |    8 +-
 subprojects/docs/src/docs/userguide/ant.xml        |    2 +-
 subprojects/docs/src/docs/userguide/buildCache.xml |   66 +
 .../docs/src/docs/userguide/buildEnvironment.xml   |    8 +-
 .../docs/src/docs/userguide/buildInitPlugin.xml    |   34 +-
 .../docs/src/docs/userguide/commandLine.xml        |   25 +-
 .../src/docs/userguide/commandLineTutorial.xml     |   12 +-
 .../docs/src/docs/userguide/compositeBuilds.xml    |    2 +-
 subprojects/docs/src/docs/userguide/depMngmt.xml   |   14 +-
 .../docs/src/docs/userguide/eclipsePlugin.xml      |    2 +-
 .../docs/src/docs/userguide/guiTutorial.xml        |   13 +-
 .../img/java-library-ignore-deprecated-main.dot    |   27 +
 .../img/java-library-ignore-deprecated-main.png    |  Bin 0 -> 24778 bytes
 .../img/java-library-ignore-deprecated-test.dot    |   26 +
 .../img/java-library-ignore-deprecated-test.png    |  Bin 0 -> 30971 bytes
 .../img/java-library-ignore-deprecated.png         |  Bin 0 -> 69875 bytes
 .../userguide/img/javaPluginConfigurations.graphml |   84 +-
 .../userguide/img/javaPluginConfigurations.png     |  Bin 27423 -> 26670 bytes
 .../docs/src/docs/userguide/jacocoPlugin.xml       |   46 +-
 .../docs/src/docs/userguide/javaLibraryPlugin.xml  |  296 ++++
 subprojects/docs/src/docs/userguide/javaPlugin.xml |   59 +-
 .../docs/src/docs/userguide/multiproject.xml       |    6 +
 .../docs/src/docs/userguide/nativeBinaries.xml     |    8 +-
 .../src/docs/userguide/softwareModelExtend.xml     |    2 +-
 subprojects/docs/src/docs/userguide/tasks.xml      |  118 +-
 subprojects/docs/src/docs/userguide/userguide.xml  |    2 +
 .../docs/src/docs/userguide/workingWithFiles.xml   |   50 +-
 .../ivy-publish/java-multi-project/output-ivy.xml  |    5 +-
 .../multiple-publications/output/project1.ivy.xml  |    3 +-
 .../output/project2-impl.ivy.xml                   |    3 +-
 .../docs/src/samples/ivypublish/build.gradle       |    5 +-
 .../java-library/multiproject/app/build.gradle     |   28 +
 .../src/main/java/org/gradle/samples/app/Main.java |   23 +
 .../samples/java-library/multiproject/build.gradle |    5 +
 .../java-library/multiproject/core/build.gradle    |   22 +
 .../main/java/org/gradle/samples/core/Person.java  |   48 +
 .../samples/java-library/multiproject/readme.xml   |   19 +
 .../java-library/multiproject/settings.gradle      |    2 +
 .../java-library/multiproject/utils/build.gradle   |   22 +
 .../java/org/gradle/samples/utils/PersonUtils.java |   21 +
 .../samples/java-library/quickstart/build.gradle   |   33 +
 .../src/samples/java-library/quickstart/readme.xml |   19 +
 .../main/java/org/gradle/HttpClientWrapper.java    |   60 +
 .../src/main/resources/org/gradle/resource.xml     |    1 +
 .../java-library/with-groovy/a/build.gradle        |   33 +
 .../with-groovy/a/src/main/groovy/B.groovy         |   18 +
 .../with-groovy/a/src/main/java/A.java             |   17 +
 .../java-library/with-groovy/b/build.gradle        |   21 +
 .../with-groovy/b/src/main/java/C.java             |   17 +
 .../java-library/with-groovy/settings.gradle       |   17 +
 subprojects/docs/src/samples/java/apt/build.gradle |   38 +
 .../src/main/java/com/acme/DefaultHeatSensor.java  |    7 +
 .../apt/src/main/java/com/acme/HeatSensor.java     |    5 +
 .../java/apt/src/main/java/com/acme/Sensors.java   |   11 +
 .../src/samples/native-binaries/cunit/build.gradle |    3 +-
 .../cunit/libs/cunit/2.1-2/include/CUnit/CUnit.h   |    2 +-
 .../native-binaries/google-test/build.gradle       |    3 +-
 .../samples/scala/crossCompilation/build.gradle    |    3 +-
 .../src/main/java/org/gradle/sample/Named.java     |    5 +
 .../src/main/java/org/gradle/sample/Person.java    |    5 -
 .../main/scala/org/gradle/sample/JavaPerson.java   |    7 +
 .../src/main/scala/org/gradle/sample/Person.scala  |    5 +
 .../main/scala/org/gradle/sample/PersonList.scala  |    5 +
 .../scala/org/gradle/sample/impl/JavaPerson.java   |    7 -
 .../scala/org/gradle/sample/impl/PersonImpl.scala  |   11 -
 .../scala/org/gradle/sample/impl/PersonList.scala  |    9 -
 .../test/scala/org/gradle/sample/PersonSpec.scala  |   20 +
 .../test/scala/org/gradle/sample/PersonTest.scala  |   19 -
 .../samples/scala/customizedLayout/build.gradle    |    5 +-
 .../src/scala/org/gradle/sample/Named.scala        |    5 +
 .../src/scala/org/gradle/sample/Person.scala       |    3 +
 .../src/scala/org/gradle/sample/api/Person.scala   |    9 -
 .../scala/org/gradle/sample/impl/PersonImpl.scala  |   10 -
 .../test/scala/org/gradle/sample/PersonSpec.scala  |   15 +
 .../org/gradle/sample/impl/PersonImplTest.scala    |   14 -
 .../docs/src/samples/scala/force/build.gradle      |    3 +-
 .../src/main/scala/org/gradle/sample/Named.scala   |    9 +
 .../src/main/scala/org/gradle/sample/Person.scala  |    7 +
 .../main/scala/org/gradle/sample/api/Person.scala  |    9 -
 .../scala/org/gradle/sample/impl/PersonImpl.scala  |   12 -
 .../test/scala/org/gradle/sample/PersonSpec.scala  |   15 +
 .../org/gradle/sample/impl/PersonImplTest.scala    |   14 -
 .../samples/scala/mixedJavaAndScala/build.gradle   |    3 +-
 .../src/main/java/org/gradle/sample/Named.java     |    5 +
 .../src/main/java/org/gradle/sample/Person.java    |    5 -
 .../main/scala/org/gradle/sample/JavaPerson.java   |    7 +
 .../src/main/scala/org/gradle/sample/Person.scala  |    5 +
 .../main/scala/org/gradle/sample/PersonList.scala  |    5 +
 .../scala/org/gradle/sample/impl/JavaPerson.java   |    7 -
 .../scala/org/gradle/sample/impl/PersonImpl.scala  |   11 -
 .../scala/org/gradle/sample/impl/PersonList.scala  |    9 -
 .../test/scala/org/gradle/sample/PersonSpec.scala  |   20 +
 .../test/scala/org/gradle/sample/PersonTest.scala  |   20 -
 .../docs/src/samples/scala/quickstart/build.gradle |    4 +-
 .../src/main/scala/org/gradle/sample/Named.scala   |   12 +
 .../src/main/scala/org/gradle/sample/Person.scala  |    7 +
 .../main/scala/org/gradle/sample/api/Person.scala  |    9 -
 .../scala/org/gradle/sample/impl/PersonImpl.scala  |   12 -
 .../test/scala/org/gradle/sample/PersonSpec.scala  |   15 +
 .../org/gradle/sample/impl/PersonImplTest.scala    |   14 -
 .../docs/src/samples/scala/zinc/build.gradle       |    3 +-
 .../src/main/scala/org/gradle/sample/Named.scala   |    9 +
 .../src/main/scala/org/gradle/sample/Person.scala  |    7 +
 .../main/scala/org/gradle/sample/api/Person.scala  |    9 -
 .../scala/org/gradle/sample/impl/PersonImpl.scala  |   12 -
 .../test/scala/org/gradle/sample/PersonSpec.scala  |   15 +
 .../samples/testing/jacoco/quickstart/build.gradle |   26 +-
 .../artifacts/defineRepository/build.gradle        |   22 +
 .../samples/userguide/files/archives/build.gradle  |    8 +
 .../userguideOutput/compositeBuilds_basic_cli.out  |    6 +-
 ...pendentTaskForApplicationDistributionOutput.out |    2 +-
 .../incrementalBuildBadInputFilesConfig.out        |    2 +-
 .../incrementalBuildInputFilesConfig.out           |    2 +-
 .../incrementalBuildInputFilesConfigUsingTask.out  |    2 +-
 .../inferredTaskDependencyWithBuiltBy.out          |    2 +-
 .../javaLibraryTargetPlatforms-java6MainJar.out    |    2 +-
 .../javaLibraryTargetPlatforms-server.out          |    2 +-
 .../publishingIvyPublishLifecycle.out              |    4 +-
 .../userguideOutput/publishingIvyPublishSingle.out |    4 +-
 .../publishingMavenPublishLocal.out                |    2 +-
 .../publishingMavenPublishMinimal.out              |    2 +-
 .../runtimeIncrementalApiConfiguration.out         |    2 +-
 .../samples/userguideOutput/taskListAllReport.out  |   13 +-
 .../docs/src/transforms/release-notes.gradle       |   10 +-
 .../plugins/ear/EarPluginIntegrationTest.groovy    |  116 ++
 .../src/main/java/org/gradle/plugins/ear/Ear.java  |    5 +-
 .../java/org/gradle/plugins/ear/EarPlugin.java     |    5 +-
 .../ear/descriptor/DeploymentDescriptor.java       |    5 +-
 .../internal/DefaultDeploymentDescriptor.java      |    4 +-
 .../internal/VisualStudioProjectRegistry.java      |    3 +-
 subprojects/ide/ide.gradle                         |    3 +-
 .../eclipse/EclipseClasspathIntegrationTest.groovy |   68 +-
 ...WtpEarAndWebAndEjbProjectIntegrationTest.groovy |    1 +
 .../eclipse/EclipseWtpModelIntegrationTest.groovy  |   10 +-
 ...lipseWtpWebAndJavaProjectIntegrationTest.groovy |    2 +-
 .../EclipseWtpWebProjectIntegrationTest.groovy     |    2 +-
 ...deaDependencySubstitutionIntegrationTest.groovy |   16 +-
 .../plugins/ide/idea/IdeaIntegrationTest.groovy    |   10 +-
 .../ide/idea/IdeaModuleIntegrationTest.groovy      |  148 +-
 .../ide/idea/IdeaMultiModuleIntegrationTest.groovy |  114 +-
 .../expectedFiles/api/api.iml.xml                  |   13 +
 .../expectedFiles/webservice/webservice.iml.xml    |   78 +-
 .../expectedFiles/root.iml.xml                     |   23 +
 .../gradle/plugins/ide/eclipse/EclipsePlugin.java  |    4 +-
 .../model/internal/EclipseDependenciesCreator.java |    4 +-
 .../model/internal/ProjectDependencyBuilder.java   |    4 +-
 .../model/internal/WtpComponentFactory.java        |    6 +-
 .../org/gradle/plugins/ide/idea/IdeaPlugin.java    |   93 +-
 .../gradle/plugins/ide/idea/model/IdeaModule.java  |   22 +-
 .../gradle/plugins/ide/idea/model/IdeaProject.java |   14 +-
 .../idea/model/internal/GeneratedIdeaScope.java    |   26 +-
 .../model/internal/IdeaDependenciesProvider.java   |  356 ++--
 .../model/internal/ModuleDependencyBuilder.java    |    4 +-
 .../AbstractPersistableConfigurationObject.java    |    3 +-
 .../resolver/DefaultIdeDependencyResolver.java     |   15 +-
 .../resolver/model/IdeProjectDependency.java       |    1 -
 .../internal/tooling/BuildEnvironmentBuilder.java  |    5 +-
 .../internal/tooling/BuildInvocationsBuilder.java  |   30 +-
 .../ide/internal/tooling/EclipseModelBuilder.java  |   10 +-
 .../ide/internal/tooling/GradleBuildBuilder.java   |   28 +-
 .../ide/internal/tooling/GradleProjectBuilder.java |    5 +-
 .../ide/internal/tooling/IdeaModelBuilder.java     |    8 +-
 .../ide/internal/tooling/PublicationsBuilder.java  |   16 +-
 .../tooling/ToolingModelBuilderSupport.java        |    6 +-
 .../tooling/eclipse/DefaultEclipseProject.java     |   24 +-
 .../internal/tooling/idea/DefaultIdeaModule.java   |   31 +-
 .../tooling/model/DefaultBuildInvocations.java     |   26 +-
 .../tooling/model/LaunchableGradleProjectTask.java |    8 +-
 .../tooling/model/LaunchableGradleTask.java        |   17 +
 .../model/LaunchableGradleTaskSelector.java        |   35 +-
 .../plugins/ide/eclipse/EclipsePluginTest.groovy   |    6 +-
 .../ide/eclipse/EclipseWtpPluginTest.groovy        |   10 +-
 .../internal/ProjectDependencyBuilderTest.groovy   |   12 +-
 .../gradle/plugins/ide/idea/IdeaPluginTest.groovy  |    7 +-
 .../internal/IdeaDependenciesProviderTest.groovy   |   51 +-
 .../internal/ModuleDependencyBuilderTest.groovy    |   11 +-
 .../tooling/BuildInvocationsBuilderTest.groovy     |   14 -
 .../tooling/eclipse/EclipseModelBuilderTest.groovy |    4 +-
 .../plugins/ide/fixtures/IdeaModuleFixture.groovy  |    8 +
 subprojects/integ-test/integ-test.gradle           |   39 +-
 .../integtests/ApplicationIntegrationSpec.groovy   |    2 +
 .../BuildAggregationIntegrationTest.groovy         |    8 +-
 .../integtests/CacheProjectIntegrationTest.groovy  |   26 +-
 ...CachedKotlinTaskExecutionIntegrationTest.groovy |  136 ++
 .../integtests/CommandLineIntegrationTest.groovy   |   52 +-
 .../GradleBuildCacheCorruptionTest.groovy          |   47 +
 .../GradleScriptKotlinIntegrationTest.groovy       |   92 ++
 ...JavaCompileOnlyDependencyIntegrationTest.groovy |   14 +-
 .../integtests/JavaProjectIntegrationTest.groovy   |   22 +-
 ...esTransformingClassLoaderIntegrationTest.groovy |   56 +
 .../MixedJavaAndWebProjectIntegrationTest.groovy   |  120 +-
 .../MixedNativeAndJvmProjectIntegrationTest.groovy |   29 +-
 .../OsgiProjectSampleIntegrationTest.groovy        |    2 +
 .../StaleOutputHistoryLossIntegrationTest.groovy   |  628 +++++++
 .../integtests/StaleOutputIntegrationTest.groovy   |   34 +
 .../integtests/TaskExecutionIntegrationTest.groovy |   72 +-
 ...ssingBinaryCompatibilityCrossVersionSpec.groovy |   10 +-
 .../fixtures/StaleOutputJavaProject.groovy         |  150 ++
 .../SamplesCodeQualityIntegrationTest.groovy       |    4 +
 .../samples/UserGuideSamplesIntegrationTest.groovy |    8 +-
 .../samples/UserGuideSamplesRunner.groovy          |   14 +-
 .../internal-android-performance-testing.gradle    |    5 +-
 .../internal-integ-testing.gradle                  |    1 +
 .../fixtures/AbstractCompatibilityTestRunner.java  |    6 +-
 .../fixtures/AbstractIntegrationSpec.groovy        |   33 +-
 .../fixtures/AbstractIntegrationTest.java          |   12 +-
 .../AbstractTaskRelocationIntegrationTest.groovy   |   14 +-
 .../fixtures/CrossVersionIntegrationSpec.groovy    |    3 +-
 .../fixtures/LocalBuildCacheFixture.groovy         |   50 +
 .../ReproducibleArchivesInterceptor.groovy         |   72 +
 .../ReproducibleArchivesTestExtension.groovy       |   55 +
 .../archives/TestReproducibleArchives.groovy       |   43 +
 .../fixtures/build/BuildTestFixture.groovy         |    1 +
 .../fixtures/daemon/AbstractDaemonFixture.groovy   |    4 +
 .../integtests/fixtures/daemon/LegacyDaemon.groovy |    7 +-
 .../fixtures/daemon/TestableDaemon.groovy          |    5 +-
 .../executer/AbstractDelegatingGradleExecuter.java |    5 +-
 .../fixtures/executer/AbstractGradleExecuter.java  |  107 +-
 .../fixtures/executer/DaemonGradleExecuter.java    |    6 +
 .../executer/DefaultGradleDistribution.java        |    4 +-
 .../fixtures/executer/DurationMeasurement.java     |   22 +
 .../ExecuterDecoratingGradleDistribution.java      |    4 +-
 .../fixtures/executer/ForkingGradleExecuter.java   |    6 +-
 .../fixtures/executer/ForkingGradleHandle.java     |   44 +-
 .../executer/GradleContextualExecuter.java         |   37 +-
 .../fixtures/executer/GradleDistribution.java      |    2 +-
 .../fixtures/executer/GradleExecuter.java          |   39 +-
 .../fixtures/executer/InProcessGradleExecuter.java |   19 +-
 .../executer/IntegrationTestBuildContext.java      |   31 +-
 .../fixtures/executer/OutputCapturer.java          |   49 +
 .../executer/OutputScrapingExecutionResult.java    |    6 +-
 .../executer/ParallelForkingGradleExecuter.java    |    6 +-
 .../executer/ParallelForkingGradleHandle.java      |    4 +-
 .../UnderDevelopmentGradleDistribution.java        |   14 +-
 .../versions/ReleasedVersionDistributions.java     |   11 +-
 .../gradle/test/fixtures/ivy/IvyFileModule.groovy  |   14 +-
 .../org/gradle/test/fixtures/maven/MavenPom.groovy |    8 +
 .../gradle/test/fixtures/maven/MavenScope.groovy   |    5 +
 .../test/fixtures/plugin/PluginBuilder.groovy      |   13 +
 .../fixtures/server/http/BlockingHttpServer.groovy |   17 +-
 .../test/fixtures/server/http/IvyHttpModule.groovy |    5 +
 .../test/fixtures/server/sftp/SFTPServer.groovy    |    6 +
 .../executer/ForkingGradleHandleTest.groovy        |  122 ++
 .../ReleasedVersionDistributionsTest.groovy        |    7 +-
 .../internal-performance-testing.gradle            |   35 -
 ...dStudioMockupCrossVersionPerformanceTest.groovy |    2 +-
 .../AbstractCrossBuildPerformanceTest.groovy       |    8 +-
 .../AbstractCrossVersionPerformanceTest.groovy     |   11 +-
 .../AbstractGradleVsMavenPerformanceTest.groovy    |    9 +-
 ...actToolingApiCrossVersionPerformanceTest.groovy |   83 +-
 .../categories/AndroidPerformanceTest.java         |   21 -
 .../categories/BasicPerformanceTest.java           |   23 -
 .../gradle/performance/categories/Experiment.java  |   25 -
 .../categories/GradleCorePerformanceTest.java      |   21 -
 .../categories/JavaPerformanceTest.java            |   23 -
 .../categories/NativePerformanceTest.java          |   23 -
 .../categories/PerformanceExperiment.java          |   24 +
 .../categories/PerformanceRegressionTest.java      |   25 +
 .../categories/ToolingApiPerformanceTest.java      |   23 -
 ...AbstractGradleBuildPerformanceTestRunner.groovy |   19 +-
 .../fixture/BuildEventTimestampCollector.java      |   99 --
 .../performance/fixture/BuildExperimentRunner.java |   82 +-
 .../performance/fixture/BuildExperimentSpec.groovy |    6 +-
 .../fixture/CompilationLoggingCollector.java       |   60 -
 .../fixture/CompositeDataCollector.java            |    9 +-
 .../fixture/CrossBuildPerformanceTestRunner.groovy |   15 +-
 .../CrossVersionPerformanceTestRunner.groovy       |   38 +-
 .../fixture/DurationMeasurementImpl.java           |   57 +
 .../gradle/performance/fixture/GCEventParser.java  |   87 -
 .../performance/fixture/GCLoggingCollector.java    |  190 ---
 .../fixture/GradleBuildExperimentSpec.groovy       |   18 +-
 .../fixture/GradleExecuterBackedSession.groovy     |   94 +-
 .../performance/fixture/GradleSessionProvider.java |   12 +-
 .../GradleVsMavenBuildExperimentRunner.java        |   20 +-
 .../GradleVsMavenPerformanceTestRunner.groovy      |   12 +-
 .../fixture/InvocationExecutorProvider.java        |    5 +-
 .../org/gradle/performance/fixture/LogFiles.java   |   12 +
 .../fixture/MavenBuildExperimentSpec.groovy        |   19 +-
 .../performance/fixture/MemoryInfoCollector.groovy |   43 -
 .../gradle/performance/fixture/OperationTimer.java |   20 +-
 .../fixture/PerformanceCounterCollector.java       |  128 --
 .../PerformanceTestGradleDistribution.groovy       |   59 +
 .../fixture/PerformanceTestJvmOptions.groovy       |   43 +
 .../fixture/ToolingApiBackedGradleSession.groovy   |   27 +-
 .../gradle/performance/fixture/WaitingReader.java  |   10 +-
 .../org/gradle/performance/measure/Amount.java     |   26 +-
 .../org/gradle/performance/measure/DataSeries.java |   15 +
 .../performance/measure/MeasuredOperation.groovy   |   21 +-
 .../performance/results/BaselineVersion.groovy     |   59 +-
 .../org/gradle/performance/results/Checks.java     |   14 +-
 .../results/CrossBuildPerformanceResults.groovy    |    8 +-
 .../results/CrossVersionPerformanceResults.groovy  |   21 +-
 .../results/CrossVersionResultsStore.java          |   23 +-
 .../GradleVsMavenBuildPerformanceResults.groovy    |   12 +-
 .../results/GraphIndexPageGenerator.java           |   11 -
 .../performance/results/HtmlPageGenerator.java     |   48 +-
 .../results/MeasuredOperationList.groovy           |    8 +-
 .../performance/results/PrettyCalculator.groovy    |    4 +-
 .../performance/results/TestDataGenerator.java     |   18 +-
 .../performance/results/TestPageGenerator.java     |   85 +-
 .../org/gradle/reporting/performanceGraph.js       |    3 +-
 .../performance/plugin/BuildEventTimeStamps.java   |   97 --
 .../plugin/DiagnosticCommandMBeanHelper.java       |   44 -
 .../performance/plugin/ExternalResources.java      |   33 -
 .../org/gradle/performance/plugin/HeapDumper.java  |   77 -
 .../gradle/performance/plugin/HeapMeasurement.java |   74 -
 .../plugin/JavaFlightRecorderControl.java          |   50 -
 .../performance/plugin/MeasurementPlugin.java      |   81 -
 .../plugin/PerformanceCounterDumper.java           |   70 -
 .../plugin/PerformanceCounterMeasurement.java      |   65 -
 .../gradle/performance/plugin/ReflectionUtil.java  |  151 --
 .../src/templates/init.gradle                      |    5 -
 .../src/templates/measurement-plugin/build.gradle  |   17 -
 .../BuildEventTimestampCollectorTest.groovy        |   97 --
 ...CrossVersionPerformanceTestExecutionTest.groovy |  103 +-
 .../CrossVersionPerformanceTestRunnerTest.groovy   |   73 +-
 .../performance/fixture/GCEventParserTest.groovy   |   75 -
 .../fixture/GCLoggingCollectorTest.groovy          |   62 -
 .../fixture/PerformanceCounterCollectorTest.groovy |   49 -
 .../performance/measure/DataSeriesTest.groovy      |    3 +
 .../gradle/integtests/fixtures/UrlValidator.groovy |   11 +-
 .../gradle/test/fixtures/ConcurrentTestUtil.groovy |    5 +
 .../fixtures/archive/ArchiveTestFixture.groovy     |   25 +-
 .../test/fixtures/archive/JarTestFixture.groovy    |   16 +-
 .../test/fixtures/archive/TarTestFixture.groovy    |    1 +
 .../test/fixtures/archive/ZipTestFixture.groovy    |    1 +
 .../fixtures/concurrent/TestExecutorFactory.groovy |    5 +
 .../file/AbstractTestDirectoryProvider.java        |   20 +-
 .../org/gradle/test/fixtures/file/TestFile.java    |   35 +-
 .../gradle/testing/internal/util/RetryFailure.java |    4 +-
 .../gradle/testing/internal/util/RetryRule.groovy  |   12 +-
 .../gradle/testing/internal/util/RetryUtil.groovy  |   38 +
 .../org/gradle/util/SetSystemProperties.java       |   35 +
 .../testing/internal/util/RetryUtilTest.groovy     |   77 +
 .../org/gradle/util/SetSystemPropertiesTest.groovy |   78 +
 .../api/publish/ivy/IvyPublishHttpIntegTest.groovy |    2 +-
 .../api/publish/ivy/IvyPublishJavaIntegTest.groovy |    4 +-
 .../ivy/SamplesIvyPublishIntegrationTest.groovy    |    4 +-
 .../ivy/IvyHttpPublishIntegrationTest.groovy       |    2 +-
 .../ivy/IvyLocalPublishIntegrationTest.groovy      |  124 +-
 .../publication/DefaultIvyPublication.java         |   33 +-
 .../publication/DefaultIvyPublicationTest.groovy   |    7 +-
 ...actIvyRemoteLegacyPublishIntegrationTest.groovy |    2 +-
 .../plugins/JacocoCachingIntegrationTest.groovy    |   63 +
 .../JacocoMultiVersionIntegrationTest.groovy       |   34 +
 .../plugins/JacocoPluginIntegrationTest.groovy     |  227 +--
 .../JacocoPluginMultiVersionIntegrationTest.groovy |  269 +++
 .../JacocoReportRelocationIntegrationTest.groovy   |   61 +
 .../JacocoTestRelocationIntegrationTest.groovy     |   81 +
 ...acocoVersionCompatibilityIntegrationTest.groovy |   43 +
 .../jacoco/plugins/JacocoVersionIntegTest.groovy   |   67 -
 .../jacoco/plugins/fixtures/JacocoCoverage.groovy  |   91 +
 .../plugins/fixtures/JavaProjectUnderTest.groovy   |  115 ++
 ...verageVerificationVersionIntegrationTest.groovy |   43 +
 ...ficationCompatibleVersionIntegrationTest.groovy |   32 +
 ...cationIncompatibleVersionIntegrationTest.groovy |   33 +
 ...luginCoverageVerificationIntegrationTest.groovy |  373 +++++
 .../plugins/rules/JacocoViolationRulesLimit.groovy |   55 +
 .../internal/jacoco/AbstractAntJacocoReport.java   |   90 +
 .../org/gradle/internal/jacoco/AntJacocoCheck.java |  114 ++
 .../gradle/internal/jacoco/AntJacocoReport.java    |   91 +-
 .../gradle/internal/jacoco/JacocoCheckResult.java  |   39 +
 .../internal/jacoco/rules/JacocoLimitImpl.java     |  101 ++
 .../jacoco/rules/JacocoViolationRuleImpl.java      |  124 ++
 .../rules/JacocoViolationRulesContainerImpl.java   |   58 +
 .../testing/jacoco/plugins/JacocoPlugin.java       |   29 +-
 .../jacoco/plugins/JacocoPluginExtension.java      |   46 +-
 .../jacoco/plugins/JacocoTaskExtension.java        |   31 +-
 .../jacoco/tasks/JacocoCoverageVerification.java   |   91 +
 .../gradle/testing/jacoco/tasks/JacocoMerge.java   |    5 +
 .../gradle/testing/jacoco/tasks/JacocoReport.java  |  267 +--
 .../testing/jacoco/tasks/JacocoReportBase.java     |  293 ++++
 .../testing/jacoco/tasks/rules/JacocoLimit.java    |   91 +
 .../jacoco/tasks/rules/JacocoViolationRule.java    |   95 ++
 .../tasks/rules/JacocoViolationRulesContainer.java |   56 +
 .../testing/jacoco/tasks/rules/package-info.java   |   21 +
 .../internal/jacoco/JacocoAgentJarTest.groovy      |    4 +-
 .../jacoco/rules/JacocoLimitImplTest.groovy        |   32 +
 .../rules/JacocoViolationRuleImplTest.groovy       |   90 +
 .../JacocoViolationRulesContainerImplTest.groovy   |   80 +
 .../testing/jacoco/plugins/JacocoPluginSpec.groovy |   19 +-
 .../jacoco/plugins/JacocoReportFixture.groovy      |    8 +-
 .../jacoco/plugins/JacocoTaskExtensionSpec.groovy  |    2 +-
 subprojects/javascript/javascript.gradle           |    2 +-
 .../internal/tasks/compile/ApiGroovyCompiler.java  |   44 +-
 .../compile/DefaultGroovyJavaJointCompileSpec.java |    7 +-
 .../internal/tasks/compile/GroovyCompileSpec.java  |    5 +-
 .../tasks/compile/GroovyCompilerFactory.java       |   10 +-
 .../tasks/compile/NormalizingGroovyCompiler.java   |    7 +-
 .../tasks/compile/daemon/DaemonGroovyCompiler.java |    4 +-
 .../gradle/api/tasks/compile/GroovyCompile.java    |   19 +-
 .../org/gradle/api/tasks/javadoc/Groovydoc.java    |    4 +-
 .../compile/NormalizingGroovyCompilerTest.groovy   |    8 +-
 ...leAvoidanceWithBuildCacheIntegrationTest.groovy |  113 ++
 .../compile/JavaCompileIntegrationTest.groovy      |  436 ++++-
 .../JavaCompileRelocationIntegrationTest.groovy    |    1 -
 ...ncrementalJavaCompilationIntegrationTest.groovy |  731 ++++++++
 ...ncrementalJavaCompilationIntegrationTest.groovy |   83 +
 ...ncrementalJavaCompilationIntegrationTest.groovy |  387 +----
 ...lationUsingClassDirectoryIntegrationTest.groovy |   38 +
 ...ncrementalJavaCompilationIntegrationTest.groovy |  284 +++-
 .../gradle/javadoc/JavadocIntegrationTest.groovy   |   39 +
 ...aLanguageIncrementalBuildIntegrationTest.groovy |   64 +-
 .../java/JavaSourceSetIntegrationTest.groovy       |    2 +
 .../tasks/compile/AnnotationProcessorDetector.java |  123 ++
 .../tasks/compile/AntDependsStaleClassCleaner.java |    1 +
 .../tasks/compile/CleaningJavaCompiler.java        |   14 +-
 .../CommandLineJavaCompilerArgumentsGenerator.java |   22 +-
 .../internal/tasks/compile/DaemonJavaCompiler.java |    6 +-
 .../tasks/compile/DefaultJavaCompileSpec.java      |   14 +
 .../tasks/compile/DefaultJavaCompilerFactory.java  |    6 +-
 .../internal/tasks/compile/JavaCompileSpec.java    |   10 +
 .../compile/JavaCompilerArgumentsBuilder.java      |   90 +-
 .../tasks/compile/NormalizingJavaCompiler.java     |    7 +-
 .../compile/incremental/ClassChangeProcessor.java  |   18 +-
 .../incremental/ClassSetAnalysisUpdater.java       |   35 +-
 .../IncrementalCompilationFinalizer.java           |    2 +-
 .../IncrementalCompilationInitializer.java         |   10 +-
 .../incremental/IncrementalCompilerDecorator.java  |    9 +-
 .../incremental/IncrementalCompilerFactory.java    |   19 +-
 .../compile/incremental/JavaChangeProcessor.java   |    6 +-
 .../incremental/RecompilationNotNecessary.java     |    2 +-
 .../compile/incremental/SelectiveCompiler.java     |   19 +-
 .../analyzer/CachingClassDependenciesAnalyzer.java |   16 +-
 .../incremental/analyzer/ClassAnalysis.java        |   38 -
 .../incremental/analyzer/ClassAnalysisCache.java   |    1 +
 .../analyzer/ClassAnalysisSerializer.java          |   40 +-
 .../analyzer/ClassDependenciesAnalyzer.java        |    6 +-
 .../analyzer/ClassDependenciesVisitor.java         |   58 -
 .../incremental/analyzer/ClassFilesAnalyzer.java   |   39 +-
 .../incremental/analyzer/ClassRelevancyFilter.java |   30 -
 .../analyzer/DefaultClassAnalysisCache.java        |    8 +-
 .../analyzer/DefaultClassDependenciesAnalyzer.java |   59 +-
 .../incremental/asm/ClassDependenciesVisitor.java  |  328 ++++
 .../incremental/asm/ClassRelevancyFilter.java      |   49 +
 .../compile/incremental/cache/CompileCaches.java   |    6 +-
 .../cache/DefaultGeneralCompileCaches.java         |   67 +-
 .../incremental/cache/GeneralCompileCaches.java    |    7 +
 .../compile/incremental/deps/ClassAnalysis.java    |   64 +
 .../deps/ClassDependentsAccumulator.java           |   92 +-
 .../compile/incremental/deps/ClassSetAnalysis.java |   52 +-
 .../incremental/deps/ClassSetAnalysisData.java     |  211 ++-
 .../incremental/deps/DefaultDependentsSet.java     |   33 +-
 .../compile/incremental/deps/DependencyToAll.java  |    1 +
 .../deps/LocalClassSetAnalysisStore.java           |   17 +-
 .../incremental/jar/CachingJarSnapshotter.java     |    6 +-
 .../incremental/jar/ClasspathJarFinder.java        |    2 +-
 .../incremental/jar/DefaultJarSnapshotCache.java   |   35 +-
 .../incremental/jar/DefaultJarSnapshotter.java     |   48 +-
 .../tasks/compile/incremental/jar/JarArchive.java  |    6 +-
 .../incremental/jar/JarChangeDependentsFinder.java |   47 +-
 .../incremental/jar/JarChangeProcessor.java        |    2 +-
 .../incremental/jar/JarClasspathSnapshot.java      |    8 +
 .../jar/JarClasspathSnapshotDataSerializer.java    |   20 +-
 .../jar/JarClasspathSnapshotFactory.java           |   14 +-
 .../incremental/jar/JarClasspathSnapshotMaker.java |   11 +-
 .../tasks/compile/incremental/jar/JarSnapshot.java |   22 +-
 .../compile/incremental/jar/JarSnapshotCache.java  |    3 +-
 .../incremental/jar/JarSnapshotDataSerializer.java |   21 +-
 .../jar/LocalJarClasspathSnapshotStore.java        |   19 +-
 .../incremental/jar/PreviousCompilation.java       |   14 +-
 .../incremental/recomp/RecompilationSpec.java      |   22 +-
 .../gradle/api/tasks/compile/CompileOptions.java   |   48 +-
 .../gradle/api/tasks/compile/DependOptions.java    |    1 +
 .../org/gradle/api/tasks/compile/JavaCompile.java  |  104 +-
 .../java/org/gradle/api/tasks/javadoc/Javadoc.java |   29 +-
 .../external/javadoc/CoreJavadocOptions.java       |   25 +-
 .../external/javadoc/JavadocOfflineLink.java       |   23 +-
 .../external/javadoc/JavadocOptionFileOption.java  |    3 +
 .../external/javadoc/MinimalJavadocOptions.java    |    6 +-
 .../javadoc/OptionLessJavadocOptionFileOption.java |    2 +
 .../javadoc/StandardJavadocDocletOptions.java      |  120 +-
 .../internal/AbstractJavadocOptionFileOption.java  |   11 +-
 .../AbstractListJavadocOptionFileOption.java       |    7 +-
 .../internal/BooleanJavadocOptionFileOption.java   |   11 +-
 .../internal/EnumJavadocOptionFileOption.java      |    9 +-
 .../internal/FileJavadocOptionFileOption.java      |   11 +-
 .../internal/GroupsJavadocOptionFileOption.java    |   16 +-
 .../javadoc/internal/JavadocOptionFile.java        |   50 +-
 .../internal/JavadocOptionFileOptionInternal.java  |   24 +
 .../LinksOfflineJavadocOptionFileOption.java       |   12 +-
 .../MultilineStringsJavadocOptionFileOption.java   |   15 +-
 .../OptionLessJavadocOptionFileOptionInternal.java |   23 +
 .../OptionLessStringsJavadocOptionFileOption.java  |   14 +-
 .../internal/PathJavadocOptionFileOption.java      |   13 +-
 .../internal/StringJavadocOptionFileOption.java    |    9 +-
 .../internal/StringsJavadocOptionFileOption.java   |   15 +-
 .../JavaLanguagePluginServiceRegistry.java         |   11 +-
 .../internal/JavaToolChainServiceRegistry.java     |   12 +-
 .../language/java/plugins/JavaLanguagePlugin.java  |   17 +-
 .../compile/AnnotationProcessorDetectorTest.groovy |  124 ++
 ...ndLineJavaCompilerArgumentsGeneratorTest.groovy |   15 +-
 .../compile/DefaultJavaCompilerFactoryTest.groovy  |    6 +-
 .../JavaCompilerArgumentsBuilderTest.groovy        |  132 +-
 .../compile/NormalizingJavaCompilerTest.groovy     |   15 +-
 .../incremental/ClassChangeProcessorTest.groovy    |    4 +-
 .../incremental/ClassSetAnalysisUpdaterTest.groovy |   42 -
 .../DefaultClassDependenciesAnalyzerTest.groovy    |   73 +-
 .../deps/ClassDependentsAccumulatorTest.groovy     |   87 +-
 .../incremental/deps/ClassFilesAnalyzerTest.groovy |   33 +-
 .../deps/ClassSetAnalysisDataSerializerTest.groovy |   11 +-
 .../incremental/deps/ClassSetAnalysisTest.groovy   |   72 +-
 .../jar/DefaultJarSnapshotterTest.groovy           |   49 +-
 .../jar/JarClasspathSnapshotFactoryTest.groovy     |   27 +-
 .../jar/JarClasspathSnapshotMakerTest.groovy       |    7 +-
 .../compile/incremental/test/HasInnerClass.java    |   22 +
 .../api/tasks/compile/JavaCompileTest.groovy       |    2 +
 .../gradle/api/tasks/javadoc/JavadocTest.groovy    |   27 +-
 .../javadoc/StandardJavadocDocletOptionsTest.java  |    6 +-
 .../BooleanJavadocOptionFileOptionTest.java        |    2 +-
 .../internal/EnumJavadocOptionFileOptionTest.java  |    2 +-
 .../internal/FileJavadocOptionFileOptionTest.java  |    2 +-
 .../GroupsJavadocOptionFileOptionTest.java         |    3 +-
 .../javadoc/internal/JavadocOptionFileTest.groovy  |   42 +
 .../javadoc/internal/JavadocOptionFileTest.java    |   54 -
 .../internal/JavadocOptionFileWriterTest.groovy    |    2 +-
 .../LinksOfflineJavadocOptionFileOptionTest.java   |    3 +-
 ...ultilineStringsJavadocOptionFileOptionTest.java |    3 +-
 ...tionLessStringsJavadocOptionFileOptionTest.java |    3 +-
 .../internal/PathJavadocOptionFileOptionTest.java  |    3 +-
 .../StringJavadocOptionFileOptionTest.java         |    2 +-
 .../StringsJavadocOptionFileOptionTest.java        |    3 +-
 .../fixtures/AnnotationProcessorFixture.groovy     |  121 ++
 .../compile/DefaultJvmLanguageCompileSpec.java     |   18 +-
 .../tasks/compile/JvmLanguageCompileSpec.java      |    7 +
 .../compile/daemon/AbstractDaemonCompiler.java     |   50 +-
 .../tasks/compile/daemon/CompileResult.java        |   45 -
 .../compile/daemon/CompilerClientsManager.java     |   82 -
 .../tasks/compile/daemon/CompilerDaemon.java       |   26 -
 .../tasks/compile/daemon/CompilerDaemonClient.java |   46 -
 .../compile/daemon/CompilerDaemonFactory.java      |   24 -
 .../compile/daemon/CompilerDaemonManager.java      |   57 -
 .../compile/daemon/CompilerDaemonProtocol.java     |   24 -
 .../tasks/compile/daemon/CompilerDaemonServer.java |   39 -
 .../compile/daemon/CompilerDaemonStarter.java      |   60 -
 .../tasks/compile/daemon/CompilerDaemonWorker.java |   22 -
 .../tasks/compile/daemon/DaemonForkOptions.java    |  132 --
 .../daemon/InProcessCompilerDaemonFactory.java     |   27 +-
 .../language/jvm/internal/EmptyClasspath.java      |    4 +-
 .../jvm/internal/JvmPluginServiceRegistry.java     |   10 +
 .../daemon/CompilerClientsManagerTest.groovy       |   97 --
 .../daemon/CompilerDaemonManagerTest.groovy        |  100 --
 .../daemon/DaemonForkOptionsMergeTest.groovy       |   52 -
 .../compile/daemon/DaemonForkOptionsTest.groovy    |  176 --
 ...bstractCompilerContinuousIntegrationTest.groovy |    6 +-
 ...eLanguageIncrementalBuildIntegrationTest.groovy |    8 -
 ...anguageIncrementalCompileIntegrationTest.groovy |   11 +
 .../AbstractNativeLanguageIntegrationTest.groovy   |   32 +-
 ...ctNativePreCompiledHeaderIntegrationTest.groovy |    8 -
 ...ResourcesIncrementalBuildIntegrationTest.groovy |   13 +-
 .../incremental/CompilationStateSerializer.java    |  119 +-
 .../DefaultCompilationStateCacheFactory.java       |   35 +-
 .../incremental/IncrementalCompileProcessor.java   |   10 +-
 .../incremental/IncrementalCompilerBuilder.java    |   10 +-
 .../incremental/IncrementalNativeCompiler.java     |   10 +-
 .../IncrementalCompileProcessorTest.groovy         |   13 +-
 .../ScalaCompileParallelIntegrationTest.groovy     |   28 +-
 ...aLanguageIncrementalBuildIntegrationTest.groovy |    6 +-
 .../internal/tasks/scala/DaemonScalaCompiler.java  |    9 +-
 .../tasks/scala/NormalizingScalaCompiler.java      |    7 +-
 .../internal/tasks/scala/ZincScalaCompiler.java    |   92 +-
 .../tasks/scala/ZincScalaCompilerFactory.java      |  186 +++
 .../toolchain/DefaultScalaToolProvider.java        |    6 +-
 .../toolchain/DownloadingScalaToolChain.java       |    6 +-
 .../toolchain/ScalaToolChainServiceRegistry.java   |    4 +-
 .../language/scala/tasks/AbstractScalaCompile.java |    5 +-
 .../scala/NormalizingScalaCompilerTest.groovy      |    6 +-
 .../toolchain/DefaultScalaToolProviderTest.groovy  |    4 +-
 .../toolchain/DownloadingScalaToolChainTest.groovy |    4 +-
 subprojects/launcher/launcher.gradle               |   20 +-
 .../BuildEnvironmentIntegrationTest.groovy         |   22 +
 .../launcher/CommandLineIntegrationSpec.groovy     |  115 ++
 .../launcher/GradleNativeIntegrationTest.groovy    |    2 +
 .../ArchivesContinuousIntegrationTest.groovy       |    3 +
 .../BuildSrcContinuousIntegrationTest.groovy       |    9 +-
 ...ngesDuringBuildContinuousIntegrationTest.groovy |   13 +-
 ...nuousBuildChangeReportingIntegrationTest.groovy |   15 +-
 ...inuousWorkerDaemonServiceIntegrationTest.groovy |  103 ++
 .../SimpleJavaContinuousIntegrationTest.groovy     |   25 +-
 .../DaemonHealthLoggingIntegrationTest.groovy      |    2 +-
 .../DaemonInitScriptHandlingIntegrationTest.groovy |   11 +-
 ...itialCommunicationFailureIntegrationSpec.groovy |    6 +-
 .../daemon/DaemonReuseIntegrationTest.groovy       |    4 +-
 .../ProcessCrashHandlingIntegrationTest.groovy     |    2 -
 .../server/health/MemoryInfoIntegrationTest.groovy |   51 -
 .../scaninfo/DaemonScanInfoIntegrationSpec.groovy  |   58 +-
 .../daemon/testing/DaemonsEventSequence.groovy     |    3 +-
 .../org/gradle/launcher/debug/JDWPUtil.groovy      |    0
 .../org/gradle/launcher/cli/GuiActionsFactory.java |    2 +
 .../launcher/daemon/bootstrap/DaemonMain.java      |    4 +-
 .../daemon/bootstrap/ForegroundDaemonAction.java   |    3 +-
 .../daemon/client/DaemonClientServicesSupport.java |    2 +-
 .../launcher/daemon/client/DaemonStopClient.java   |   13 +-
 .../daemon/client/DefaultDaemonConnector.java      |   13 +-
 .../daemon/client/DefaultDaemonStarter.java        |    7 +-
 .../daemon/configuration/DaemonParameters.java     |    2 +-
 .../daemon/protocol/DaemonMessageSerializer.java   |  158 +-
 .../launcher/daemon/registry/DaemonInfo.java       |    4 +-
 .../org/gradle/launcher/daemon/server/Daemon.java  |    4 +-
 .../DaemonIdleTimeoutExpirationStrategy.java       |    2 +-
 .../launcher/daemon/server/DaemonServices.java     |   25 +-
 .../daemon/server/DaemonStateCoordinator.java      |   29 +-
 .../daemon/server/DefaultDaemonConnection.java     |    5 +
 .../daemon/server/MasterExpirationStrategy.java    |   32 +-
 .../daemon/server/exec/WatchForDisconnection.java  |    2 +-
 .../daemon/server/health/DaemonHealthStats.java    |   99 +-
 .../health/LowMemoryDaemonExpirationStrategy.java  |   54 +-
 .../server/health/gc/GarbageCollectionMonitor.java |   17 +-
 .../server/health/memory/AvailableMemory.java      |   21 -
 .../health/memory/MBeanAttributeProvider.java      |   53 -
 .../server/health/memory/MBeanAvailableMemory.java |   29 -
 .../health/memory/MeminfoAvailableMemory.java      |  132 --
 .../daemon/server/health/memory/MemoryInfo.java    |   69 -
 .../health/memory/VmstatAvailableMemory.java       |  126 --
 .../daemon/server/stats/DaemonRunningStats.java    |   23 +-
 .../launcher/exec/GradleBuildController.java       |    5 +
 .../internal/provider/ProviderConnection.java      |    2 +
 .../provider/ProviderStartParameterConverter.java  |    8 +-
 .../provider/ServicesSetupBuildActionExecuter.java |   10 +-
 .../DefaultOperationStartedProgressEvent.java      |    2 +-
 .../provider/events/DefaultTaskDescriptor.java     |    6 +-
 .../provider/events/DefaultTaskSuccessResult.java  |   14 +-
 .../DaemonIdleTimeoutExpirationStrategyTest.groovy |    4 +-
 .../daemon/server/DaemonServicesTest.groovy        |    3 +-
 .../server/DaemonStateCoordinatorTest.groovy       |    7 +-
 .../server/health/DaemonHealthStatsTest.groovy     |   10 +-
 .../LowMemoryDaemonExpirationStrategyTest.groovy   |   47 +-
 .../memory/MeminfoAvailableMemoryTest.groovy       |  132 --
 .../server/health/memory/MemoryInfoTest.groovy     |   57 -
 .../health/memory/VmstatAvailableMemoryTest.groovy |   53 -
 .../provider/AbstractClassGraphSpec.groovy         |    7 +
 .../ContinuousBuildActionExecuterTest.groovy       |    3 -
 .../serialization/ClasspathInfererTest.groovy      |   13 +
 .../AbstractContinuousIntegrationTest.groovy       |   11 +
 .../internal/logging/LoggingIntegrationTest.groovy |    3 +-
 .../console/ConsoleBackedProgressRenderer.java     |    4 +-
 .../progress/DefaultProgressLoggerFactory.java     |    2 +-
 .../logging/serializer/LogEventSerializer.java     |   52 +
 .../serializer/LogLevelChangeEventSerializer.java  |   42 +
 .../ProgressCompleteEventSerializer.java           |   44 +
 .../serializer/ProgressEventSerializer.java        |   42 +
 .../serializer/ProgressStartEventSerializer.java   |   55 +
 .../logging/serializer/SpanSerializer.java         |   42 +
 .../StyledTextOutputEventSerializer.java           |   53 +
 .../services/DefaultStyledTextOutputFactory.java   |    2 +-
 .../services/LoggingBackedStyledTextOutput.java    |    2 +-
 .../logging/services/LoggingServiceRegistry.java   |    4 +-
 .../internal/logging/sink/AnsiConsoleUtil.java     |  402 +++++
 .../logging/sink/ConsoleConfigureAction.java       |    4 +-
 .../internal/logging/sink/OutputEventRenderer.java |    2 +-
 .../slf4j/OutputEventListenerBackedLogger.java     |    2 +-
 .../OutputEventListenerBackedLoggerContext.java    |    2 +-
 .../logging/source/DefaultStdErrLoggingSystem.java |    2 +-
 .../logging/source/DefaultStdOutLoggingSystem.java |    2 +-
 .../logging/source/PrintStreamLoggingSystem.java   |    2 +-
 .../java/org/gradle/util/SingleMessageLogger.java  |  100 +-
 .../java/org/slf4j/impl/StaticLoggerBinder.java    |    2 +-
 .../DefaultProgressLoggerFactoryTest.groovy        |    2 +-
 .../services/LoggingServiceRegistryTest.groovy     |    4 +-
 ...tputEventListenerBackedLoggerContextTest.groovy |    2 +-
 ...enerBackedLoggerDefaultConfigurationTest.groovy |    2 +-
 .../OutputEventListenerBackedLoggerTest.groovy     |   18 +-
 .../slf4j/Slf4jLoggingConfigurerTest.groovy        |    7 +-
 .../source/JavaUtilLoggingSystemTest.groovy        |    6 +-
 .../source/PrintStreamLoggingSystemTest.groovy     |    2 +-
 .../text/LoggingBackedStyledTextOutputTest.groovy  |    6 +-
 .../logging/TestOutputEventListener.groovy         |   19 +-
 .../maven/MavenPublishDependenciesIntegTest.groovy |   59 +
 ...MavenPomGenerationPublishIntegrationTest.groovy |  225 +++
 .../maven/MavenPublishIntegrationTest.groovy       |   36 +
 .../java/org/gradle/api/plugins/MavenPlugin.java   |   15 +
 .../action/AbstractMavenPublishAction.java         |    7 +-
 .../pom/DefaultPomDependenciesConverter.java       |   11 +-
 .../internal/publication/DefaultMavenPom.java      |    5 +
 .../publication/DefaultMavenPublication.java       |   72 +-
 .../internal/publication/MavenPomInternal.java     |    2 +
 .../publication/MavenPublicationInternal.java      |    2 +
 .../internal/tasks/MavenPomFileGenerator.java      |    5 +-
 .../api/publish/maven/tasks/GenerateMavenPom.java  |    3 +
 .../org/gradle/api/plugins/MavenPluginTest.groovy  |  175 ++
 .../org/gradle/api/plugins/MavenPluginTest.java    |  140 --
 .../publication/DefaultMavenPublicationTest.groovy |    4 +-
 .../remote/UnicastMessagingIntegrationTest.groovy  |   36 +-
 .../internal/remote/ObjectConnectionBuilder.java   |    4 +-
 .../internal/RecoverableMessageIOException.java    |   26 +
 .../internal/hub/DefaultMethodArgsSerializer.java  |   23 +-
 ...avaSerializationBackedMethodArgsSerializer.java |    2 +-
 .../internal/remote/internal/hub/MessageHub.java   |   52 +-
 .../hub/MessageHubBackedObjectConnection.java      |   86 +-
 .../remote/internal/hub/StreamFailureHandler.java  |   27 +
 .../hub/protocol/StreamFailureMessage.java         |   36 +
 .../remote/internal/inet/InetAddresses.java        |    2 +-
 .../remote/internal/inet/SocketConnection.java     |    9 +
 .../serialize/AbstractCollectionSerializer.java    |   37 +-
 .../internal/serialize/AbstractSerializer.java     |   40 +
 .../internal/serialize/BaseSerializerFactory.java  |  104 +-
 .../internal/serialize/DefaultSerializer.java      |   18 +-
 .../serialize/DefaultSerializerRegistry.java       |   77 +-
 .../internal/serialize/HashCodeSerializer.java     |    2 +-
 .../gradle/internal/serialize/ListSerializer.java  |   21 +-
 .../gradle/internal/serialize/MapSerializer.java   |   20 +-
 .../internal/serialize/SerializerRegistry.java     |    5 +
 .../gradle/internal/serialize/SetSerializer.java   |   33 +-
 .../internal/serialize/kryo/KryoBackedEncoder.java |    2 +-
 .../hub/DefaultMethodArgsSerializerTest.groovy     |   22 +-
 .../MessageHubBackedObjectConnectionTest.groovy    |   40 +
 .../serialize/DefaultSerializerRegistryTest.groovy |   19 +
 .../serialize/DefaultSerializerTest.groovy         |   11 +
 subprojects/native/native.gradle                   |   57 +
 subprojects/native/src/jmh/html/index.html         |   50 +
 .../filesystem/FileMetadataAccessorBenchmark.java  |  115 ++
 .../filesystem/DefaultFileMetadata.java            |   58 +
 .../filesystem/FileMetadataAccessor.java           |   23 +
 .../filesystem/FileMetadataSnapshot.java           |   34 +
 .../nativeintegration/filesystem/FileType.java     |   23 +
 .../nativeintegration/filesystem/Stat.java         |    4 +-
 .../filesystem/jdk7/Jdk7FileMetadataAccessor.java  |   48 +
 .../services/FallbackFileMetadataAccessor.java     |   36 +
 .../filesystem/services/FileSystemServices.java    |   43 +-
 .../filesystem/services/GenericFileSystem.java     |   15 +-
 .../NativePlatformBackedFileMetadataAccessor.java  |   48 +
 .../nativeintegration/services/NativeServices.java |   83 +-
 .../filesystem/CommonFileSystemTest.groovy         |   57 +
 .../AbstractFileMetadataAccessorTest.groovy        |   80 +
 .../FallbackFileMetadataAccessorTest.groovy        |   32 +
 .../services/GenericFileSystemTest.groovy          |    4 +-
 .../services/Jdk7FileMetadataAccessorTest.groovy   |   37 +
 .../services/UnsupportedFilePermissionsTest.groovy |    9 +-
 .../plugins/osgi/OsgiPluginIntegrationSpec.groovy  |    2 +
 .../AbstractAndroidPerformanceTest.groovy          |   32 -
 .../performance/BaseJavalSourceFileUpdater.groovy  |  148 --
 .../DependencyReportPerformanceTest.groovy         |   51 -
 .../DependencyResolutionPerformanceTest.groovy     |   51 -
 .../EnterpriseJavaBuildPerformanceTest.groovy      |  102 --
 .../performance/FirstBuildPerformanceTest.groovy   |   44 -
 .../IdeIntegrationPerformanceTest.groovy           |   74 -
 .../JavaCleanDaemonPerformanceTest.groovy          |   77 -
 .../JavaConfigurationDaemonPerformanceTest.groovy  |   75 -
 .../JavaConfigurationPerformanceTest.groovy        |   52 -
 .../JavaFullAssembleDaemonPerformanceTest.groovy   |   85 -
 .../JavaFullBuildDaemonPerformanceTest.groovy      |   50 -
 .../JavaOldModelSourceFileUpdater.groovy           |   44 -
 ...JavaPartialAssembleDaemonPerformanceTest.groovy |   75 -
 .../JavaSoftwareModelBuildPerformanceTest.groovy   |   46 -
 ...wareModelCompileAvoidancePerformanceTest.groovy |   70 -
 .../JavaSoftwareModelSourceFileUpdater.groovy      |   99 --
 ...ChangesFullAssembleDaemonPerformanceTest.groovy |   46 -
 .../JavaTestExecutionPerformanceTest.groovy        |   66 -
 .../JavaTestGradleVsMavenPerformanceTest.groovy    |   97 --
 ...pToDateFullAssembleDaemonPerformanceTest.groovy |   66 -
 .../JavaUpToDateFullBuildPerformanceTest.groovy    |   72 -
 .../LocalTaskOutputCachePerformanceTest.groovy     |   52 -
 .../ManyEmptyProjectsHelpPerformanceTest.groovy    |   53 -
 .../NativeBuildDependentsPerformanceTest.groovy    |   80 -
 .../performance/NativeBuildPerformanceTest.groovy  |   63 -
 .../NativeParallelPerformanceTest.groovy           |   47 -
 .../NativePreCompiledHeaderPerformanceTest.groovy  |   48 -
 .../NativeScenarioPerformanceTest.groovy           |   71 -
 .../ParallelBuildPerformanceTest.groovy            |   44 -
 .../ProjectDependenciesPerformanceTest.groovy      |   44 -
 .../RealLifeAndroidBuildPerformanceTest.groovy     |   51 -
 ...alLifeAndroidStudioMockupPerformanceTest.groovy |   47 -
 .../RealWorldNativePluginPerformanceTest.groovy    |  163 --
 .../performance/SourceUpdateCardinality.java       |   63 -
 .../performance/TaskCreationPerformanceTest.groovy |   48 -
 .../TestExecutionPerformanceTest.groovy            |   52 -
 ...ngApiIdeModelCrossVersionPerformanceTest.groovy |  249 ---
 .../performance/VariantsPerformanceTest.groovy     |  116 --
 .../android/AbstractAndroidPerformanceTest.groovy  |   32 +
 .../RealLifeAndroidBuildPerformanceTest.groovy     |   45 +
 ...alLifeAndroidStudioMockupPerformanceTest.groovy |   46 +
 .../basic/FirstBuildPerformanceTest.groovy         |   42 +
 .../GradleScriptKotlinBuildPerformanceTest.groovy  |   49 +
 .../basic/ProjectCreationPerformanceTest.groovy    |   37 +
 .../basic/TaskCreationPerformanceTest.groovy       |   36 +
 .../basic/TasksReportPerformanceTest.groovy        |   72 +
 .../java/BaseJavaSourceFileUpdater.groovy          |  148 ++
 .../java/DependencyReportPerformanceTest.groovy    |   43 +
 .../DependencyResolutionPerformanceTest.groovy     |   42 +
 .../java/EnterpriseJavaBuildPerformanceTest.groovy |   75 +
 .../java/IdeIntegrationPerformanceTest.groovy      |   64 +
 .../java/JavaCleanAssemblePerformanceTest.groovy   |   46 +
 .../java/JavaCleanBuildPerformanceTest.groovy      |   43 +
 .../java/JavaCleanPerformanceTest.groovy           |   45 +
 .../java/JavaConfigurationPerformanceTest.groovy   |   45 +
 .../JavaPartialCleanAssemblePerformanceTest.groovy |   45 +
 .../performance/java/JavaSourceFileUpdater.groovy  |   44 +
 .../java/JavaTestExecutionPerformanceTest.groovy   |   65 +
 .../JavaTestGradleVsMavenPerformanceTest.groovy    |   98 ++
 .../JavaUpToDateFullBuildPerformanceTest.groovy    |   42 +
 ...TaskOutputCacheCrossBuildPerformanceTest.groovy |   67 +
 .../LocalTaskOutputCacheJavaPerformanceTest.groovy |   51 +
 .../java/NoDaemonJavaPerformanceTest.groovy        |   88 +
 .../java/ParallelBuildPerformanceTest.groovy       |   45 +
 .../java/ProjectDependenciesPerformanceTest.groovy |   36 +
 .../performance/java/SourceUpdateCardinality.java  |   63 +
 .../java/TestExecutionPerformanceTest.groovy       |   45 +
 ...ngApiIdeModelCrossVersionPerformanceTest.groovy |  189 +++
 .../NativeBuildDependentsPerformanceTest.groovy    |   70 +
 .../NativeBuildPerformanceTest.groovy              |   57 +
 .../NativeParallelPerformanceTest.groovy           |   47 +
 .../NativePreCompiledHeaderPerformanceTest.groovy  |   49 +
 .../RealWorldNativePluginPerformanceTest.groovy    |  158 ++
 .../templates/java-sw-model-project/build.gradle   |  164 --
 .../src/templates/kts-empty/build.gradle.kts       |   46 +
 .../kts-project-with-source/build.gradle.kts       |   51 +
 .../src/templates/kts-settings/settings.gradle     |   31 +
 .../googleTest/build.gradle                        |   12 +
 .../src/templates/native-scenario/build.gradle     |   70 -
 .../src/main/groovy/CheckstyleExtension.groovy     |   23 -
 .../src/main/groovy/CheckstyleTaskDefaults.groovy  |   27 -
 .../src/main/groovy/CustomExtension.groovy         |   27 -
 .../buildSrc/src/main/groovy/MyTaskClass.groovy    |   34 -
 .../buildSrc/src/main/groovy/TaskWiring.groovy     |   28 -
 .../src/templates/new-java-plugin/build.gradle     |   74 -
 .../src/templates/plain-ant-compile/build.gradle   |   40 -
 .../src/templates/variants-new-model/build.gradle  |  194 ---
 .../src/templates/variants-old-model/build.gradle  |  167 --
 subprojects/performance/templates.gradle           |  259 +--
 subprojects/platform-base/platform-base.gradle     |    1 +
 .../base/internal/AbstractLanguageSourceSet.java   |   19 +-
 .../base/internal/compile/CompileSpec.java         |    4 +-
 .../DefaultLibraryLocalComponentMetadata.java      |   27 +-
 .../language/base/plugins/LifecycleBasePlugin.java |    2 +-
 .../jvm/internal/DependencyResolvingClasspath.java |   97 +-
 .../resolve/JvmLocalLibraryMetaDataAdapter.java    |   60 +-
 .../SourceSetDependencyResolvingClasspath.java     |   15 +-
 .../jvm/internal/services/PlatformJvmServices.java |    2 +
 .../src/main/java/org/gradle/jvm/tasks/Jar.java    |    2 +-
 .../main/java/org/gradle/jvm/tasks/api/ApiJar.java |    7 +-
 .../jvm/tasks/api/internal/AccessibleMember.java   |   37 -
 .../jvm/tasks/api/internal/AnnotatableMember.java  |   51 -
 .../api/internal/AnnotationAnnotationValue.java    |   24 -
 .../jvm/tasks/api/internal/AnnotationMember.java   |   61 -
 .../jvm/tasks/api/internal/AnnotationValue.java    |   36 -
 .../jvm/tasks/api/internal/ApiClassExtractor.java  |   97 --
 .../jvm/tasks/api/internal/ApiMemberSelector.java  |  230 ---
 .../tasks/api/internal/ArrayAnnotationValue.java   |   24 -
 .../gradle/jvm/tasks/api/internal/ClassMember.java |   45 -
 .../tasks/api/internal/EnumAnnotationValue.java    |   31 -
 .../gradle/jvm/tasks/api/internal/FieldMember.java |   39 -
 .../jvm/tasks/api/internal/InnerClassMember.java   |   45 -
 .../org/gradle/jvm/tasks/api/internal/Member.java  |   51 -
 .../jvm/tasks/api/internal/MethodMember.java       |   77 -
 .../internal/MethodStubbingApiMemberAdapter.java   |   85 -
 .../api/internal/ParameterAnnotationMember.java    |   38 -
 .../tasks/api/internal/SimpleAnnotationValue.java  |   24 -
 .../api/internal/SortingAnnotationVisitor.java     |   89 -
 .../gradle/jvm/tasks/api/internal/TypedMember.java |   38 -
 .../ApiClassExtractorInnerClassTest.groovy         |   34 +-
 .../api/internal/ApiClassExtractorTest.groovy      |   29 +
 .../internal/ApiClassExtractorTestSupport.groovy   |    1 +
 .../NativeToolChainDiscoveryIntegrationTest.groovy |    3 -
 .../internal/AbstractNativeLibraryBinarySpec.java  |    3 +-
 .../internal/CompilerOutputFileNamingScheme.java   |   14 +-
 .../CompilerOutputFileNamingSchemeFactory.java     |   33 +
 .../NativeDependentBinariesResolutionStrategy.java |    9 +-
 .../internal/services/NativeBinaryServices.java    |   11 +
 .../nativeplatform/tasks/InstallExecutable.java    |    6 +-
 .../toolchain/internal/NativeCompiler.java         |    8 +-
 .../toolchain/internal/OutputCleaningCompiler.java |   16 +-
 .../toolchain/internal/clang/ClangToolChain.java   |    5 +-
 .../gcc/AbstractGccCompatibleToolChain.java        |   11 +-
 .../toolchain/internal/gcc/Assembler.java          |    5 +-
 .../toolchain/internal/gcc/CCompiler.java          |    5 +-
 .../toolchain/internal/gcc/CPCHCompiler.java       |    5 +-
 .../toolchain/internal/gcc/CppCompiler.java        |    5 +-
 .../toolchain/internal/gcc/CppPCHCompiler.java     |    5 +-
 .../internal/gcc/GccCompatibleNativeCompiler.java  |    5 +-
 .../internal/gcc/GccPlatformToolProvider.java      |   39 +-
 .../toolchain/internal/gcc/GccToolChain.java       |    7 +-
 .../toolchain/internal/gcc/ObjectiveCCompiler.java |    5 +-
 .../internal/gcc/ObjectiveCPCHCompiler.java        |    5 +-
 .../internal/gcc/ObjectiveCppCompiler.java         |    5 +-
 .../internal/gcc/ObjectiveCppPCHCompiler.java      |    5 +-
 .../toolchain/internal/msvcpp/Assembler.java       |    5 +-
 .../toolchain/internal/msvcpp/CCompiler.java       |    5 +-
 .../toolchain/internal/msvcpp/CPCHCompiler.java    |    5 +-
 .../toolchain/internal/msvcpp/CppCompiler.java     |    5 +-
 .../toolchain/internal/msvcpp/CppPCHCompiler.java  |    5 +-
 .../internal/msvcpp/DefaultUcrtLocator.java        |  249 +++
 .../toolchain/internal/msvcpp/Ucrt.java            |   98 ++
 .../toolchain/internal/msvcpp/UcrtLocator.java     |   29 +
 .../internal/msvcpp/VisualCppNativeCompiler.java   |    5 +-
 .../msvcpp/VisualCppPlatformToolProvider.java      |   38 +-
 .../internal/msvcpp/VisualCppToolChain.java        |   35 +-
 .../internal/msvcpp/WindowsResourceCompiler.java   |    5 +-
 .../toolchain/plugins/ClangCompilerPlugin.java     |    4 +-
 .../toolchain/plugins/GccCompilerPlugin.java       |    5 +-
 .../plugins/MicrosoftVisualCppCompilerPlugin.java  |    6 +-
 .../CompilerOutputFileNamingSchemeTest.groovy      |   39 +
 .../toolchain/internal/NativeCompilerTest.groovy   |   10 +-
 .../internal/OutputCleaningCompilerTest.groovy     |   22 +-
 .../gcc/AbstractGccCompatibleToolChainTest.groovy  |    8 +-
 .../toolchain/internal/gcc/AssemblerTest.groovy    |    2 +-
 .../toolchain/internal/gcc/CCompilerTest.groovy    |    2 +-
 .../toolchain/internal/gcc/CPCHCompilerTest.groovy |    2 +-
 .../internal/gcc/ClangToolChainTest.groovy         |    3 +-
 .../toolchain/internal/gcc/CppCompilerTest.groovy  |    4 +-
 .../internal/gcc/CppPCHCompilerTest.groovy         |    2 +-
 .../toolchain/internal/gcc/GccToolChainTest.groovy |    3 +-
 .../internal/gcc/ObjectiveCCompilerTest.groovy     |    2 +-
 .../internal/gcc/ObjectiveCPCHCompilerTest.groovy  |    2 +-
 .../internal/gcc/ObjectiveCppCompilerTest.groovy   |    2 +-
 .../gcc/ObjectiveCppPCHCompilerTest.groovy         |    2 +-
 .../toolchain/internal/msvcpp/AssemblerTest.groovy |    2 +-
 .../toolchain/internal/msvcpp/CCompilerTest.groovy |    2 +-
 .../internal/msvcpp/CPCHCompilerTest.groovy        |    2 +-
 .../internal/msvcpp/CppCompilerTest.groovy         |    2 +-
 .../internal/msvcpp/CppPCHCompilerTest.groovy      |    2 +-
 .../internal/msvcpp/DefaultUcrtLocatorTest.groovy  |  189 +++
 .../VisualCppPlatformToolProviderTest.groovy       |    3 +-
 .../internal/msvcpp/VisualCppToolChainTest.groovy  |   19 +-
 .../msvcpp/WindowsResourceCompilerTest.groovy      |    4 +-
 ...bstractInstalledToolChainIntegrationSpec.groovy |   26 +-
 .../fixtures/AvailableToolChains.java              |   11 +
 .../fixtures/LinkerOptionsFixture.groovy           |   40 +
 .../fixtures/ToolChainRequirement.java             |    4 +
 .../fixtures/VisualStudioVersion.java              |    3 +-
 .../fixtures/app/CHelloWorldApp.groovy             |    1 +
 .../fixtures/binaryinfo/OtoolBinaryInfo.groovy     |    6 +-
 .../run/PlayApplicationDeploymentHandle.java       |    1 +
 .../internal/toolchain/DaemonPlayCompiler.java     |    6 +-
 .../internal/toolchain/DefaultPlayToolChain.java   |    6 +-
 .../toolchain/DefaultPlayToolProvider.java         |    6 +-
 .../toolchain/PlayToolChainServiceRegistry.java    |    4 +-
 .../play/internal/DefaultPlayToolChainTest.groovy  |    4 +-
 .../toolchain/DaemonPlayCompilerTest.groovy        |    4 +-
 .../toolchain/DefaultPlayToolProviderTest.groovy   |    4 +-
 ...adleImplDepsCompatibilityIntegrationTest.groovy |    5 -
 .../devel/tasks/PluginUnderTestMetadata.java       |    5 +-
 .../plugin/devel/tasks/ValidateTaskProperties.java |   12 +-
 .../plugins/JavaGradlePluginPluginTest.groovy      |    2 +-
 .../JavaGradlePluginPluginTestKitSetupTest.groovy  |    4 +-
 .../NonDeclarativePluginUseIntegrationSpec.groovy  |   23 +
 ...tPluginResolutionFailuresIntegrationSpec.groovy |   23 +-
 ...ginResolutionServiceCommsIntegrationTest.groovy |    4 +-
 .../use/resolve/service/internal/ClientStatus.java |    3 +-
 ...istentCachingPluginResolutionServiceClient.java |   47 +-
 .../service/internal/PluginUseMetaData.java        |    3 +-
 ...CachingPluginResolutionServiceClientTest.groovy |    2 +-
 subprojects/plugins/plugins.gradle                 |    9 +-
 .../AbstractCachedCompileIntegrationTest.groovy    |   28 +-
 .../ApplicationPluginIntegrationTest.groovy        |  165 +-
 .../plugins/BuildSrcPluginIntegrationTest.groovy   |   65 +-
 .../DistributionPluginIntegrationTest.groovy       |    2 +
 .../JavaLibraryDistributionIntegrationTest.groovy  |    2 +
 .../api/tasks/bundling/JarIntegrationTest.groovy   |   25 +
 .../tasks/bundling/WarTaskIntegrationTest.groovy   |    2 +
 .../CachedGroovyCompileIntegrationTest.groovy      |   12 +-
 ...vaJointCompileSourceOrderIntegrationTest.groovy |   77 +
 .../JavaLibraryCompilationIntegrationTest.groovy   |  438 +++++
 ...ompileAvoidanceAgainstJarIntegrationSpec.groovy |   87 +
 ...tractJavaCompileAvoidanceIntegrationSpec.groovy | 1032 ++++++++++++
 .../CachedJavaCompileIntegrationTest.groovy        |   33 +-
 ...ncrementalCompileMultiProjectTestFixture.groovy |   56 +
 ...eAvoidanceAgainstClassDirIntegrationSpec.groovy |   24 +
 ...ompileAvoidanceAgainstJarIntegrationSpec.groovy |   24 +
 .../IncrementalJavaCompileIntegrationTest.groovy   |  211 ++-
 ...eAvoidanceAgainstClassDirIntegrationSpec.groovy |   23 +
 ...ompileAvoidanceAgainstJarIntegrationSpec.groovy |   20 +
 .../DaemonJavaCompilerIntegrationTest.groovy       |    2 +-
 .../recompilesDependentClasses/NewIPerson.java     |    4 -
 .../recompilesDependentClasses/build.gradle        |    1 -
 .../src/main/java/IPerson.java                     |    3 -
 .../src/main/java/Person.java                      |    3 -
 .../NewIPerson.java                                |    4 -
 .../app/src/main/java/Person.java                  |    3 -
 .../build.gradle                                   |    9 -
 .../lib/src/main/java/IPerson.java                 |    3 -
 .../settings.gradle                                |    1 -
 .../build.gradle                                   |    4 -
 .../src/main/java/Test.java                        |    3 -
 .../org/gradle/api/internal/java/JavaLibrary.java  |  100 +-
 .../gradle/api/internal/java/WebApplication.java   |   15 +-
 .../plugins/DefaultArtifactPublicationSet.java     |    9 +-
 .../gradle/api/internal/tasks/CompileServices.java |   27 +-
 .../api/internal/tasks/DefaultGroovySourceSet.java |   12 +-
 .../api/internal/tasks/DefaultSourceSet.java       |   67 +-
 .../org/gradle/api/plugins/ApplicationPlugin.java  |    4 +-
 .../java/org/gradle/api/plugins/BasePlugin.java    |    2 +-
 .../org/gradle/api/plugins/JavaBasePlugin.java     |   90 +-
 .../org/gradle/api/plugins/JavaLibraryPlugin.java  |   90 +
 .../java/org/gradle/api/plugins/JavaPlugin.java    |  320 +++-
 .../gradle/api/plugins/JavaPluginConvention.java   |   31 +-
 .../java/org/gradle/api/tasks/GroovySourceSet.java |   11 +
 .../main/java/org/gradle/api/tasks/SourceSet.java  |   88 +
 .../org.gradle.java-library.properties             |   17 +
 .../tasks/DefaultGroovySourceSetTest.groovy        |    8 +
 .../api/internal/tasks/DefaultSourceSetTest.groovy |   18 +
 .../org/gradle/api/plugins/GroovyPluginTest.groovy |  122 +-
 .../gradle/api/plugins/JavaBasePluginTest.groovy   |   38 +-
 .../api/plugins/JavaLibraryPluginTest.groovy       |  234 +++
 .../api/plugins/JavaPluginConventionTest.groovy    |    8 +
 .../org/gradle/api/plugins/JavaPluginTest.groovy   |   95 +-
 .../org/gradle/api/plugins/WarPluginTest.groovy    |  138 +-
 .../gradle/api/tasks/testing/TestTaskSpec.groovy   |    7 +
 .../org/gradle/api/tasks/testing/TestTest.groovy   |    7 +
 .../process-services/process-services.gradle       |    1 +
 .../health/memory/MemoryInfoIntegrationTest.groovy |   84 +
 .../MemoryStatusUpdateIntegrationTest.groovy       |   69 +
 .../internal/health/memory/AvailableMemory.java    |   21 +
 .../health/memory/DefaultMemoryManager.java        |  198 +++
 .../internal/health/memory/JvmMemoryStatus.java    |   32 +
 .../health/memory/JvmMemoryStatusListener.java     |   21 +
 .../health/memory/JvmMemoryStatusSnapshot.java     |   42 +
 .../health/memory/MBeanAttributeProvider.java      |   53 +
 .../health/memory/MBeanAvailableMemory.java        |   27 +
 .../internal/health/memory/MaximumHeapHelper.java  |   84 +
 .../health/memory/MeminfoAvailableMemory.java      |  132 ++
 .../internal/health/memory/MemoryAmount.java       |  130 ++
 .../internal/health/memory/MemoryHolder.java       |   33 +
 .../process/internal/health/memory/MemoryInfo.java |   80 +
 .../internal/health/memory/MemoryManager.java      |   52 +
 .../internal/health/memory/OsMemoryStatus.java     |   32 +
 .../health/memory/OsMemoryStatusListener.java      |   21 +
 .../health/memory/OsMemoryStatusSnapshot.java      |   42 +
 .../health/memory/VmstatAvailableMemory.java       |  126 ++
 .../health/memory/DefaultMemoryManagerTest.groovy  |  180 ++
 .../health/memory/MaximumHeapHelperTest.groovy     |   71 +
 .../memory/MeminfoAvailableMemoryTest.groovy       |  132 ++
 .../internal/health/memory/MemoryAmountTest.groovy |  108 ++
 .../internal/health/memory/MemoryInfoTest.groovy   |   75 +
 .../health/memory/VmstatAvailableMemoryTest.groovy |   54 +
 .../api/reporting/GenerateBuildDashboard.java      |    3 +-
 .../reporting/internal/DefaultReportContainer.java |   13 +-
 .../authentication/DefaultBasicAuthentication.java |    5 +
 .../DefaultDigestAuthentication.java               |    5 +
 .../resource/s3/S3ClientIntegrationTest.groovy     |   41 +-
 .../s3/maven/MavenPublishS3IntegrationTest.groovy  |   52 +
 .../maven/MavenS3RepoErrorsIntegrationTest.groovy  |    2 +-
 .../authentication/aws/AwsImAuthentication.java    |   31 +
 .../gradle/authentication/aws/package-info.java    |   25 +
 .../authentication/DefaultAwsImAuthentication.java |   38 +
 .../resource/transport/aws/s3/S3Client.java        |   37 +-
 .../transport/aws/s3/S3ConnectorFactory.java       |   36 +-
 .../aws/s3/S3ResourcesPluginServiceRegistry.java   |   12 +
 .../resource/transport/aws/s3/S3ClientTest.groovy  |   14 +
 .../transport/aws/s3/S3ConnectorFactoryTest.groovy |   21 +-
 .../sftp/SftpClientReuseIntegrationTest.groovy     |   92 ++
 .../transport/sftp/LockableSftpClient.java         |    1 +
 .../resource/transport/sftp/SftpClientFactory.java |   55 +-
 .../transport/sftp/SftpClientFactoryTest.groovy    |  117 +-
 subprojects/resources/resources.gradle             |    1 +
 .../resource/ResourceContentMetadataSnapshot.java  |   29 +
 .../connector/ResourceConnectorSpecification.java  |    4 +-
 .../SamplesMixedJavaAndScalaIntegrationTest.groovy |   23 +-
 ...plesScalaCustomizedLayoutIntegrationTest.groovy |    8 +-
 .../SamplesScalaQuickstartIntegrationTest.groovy   |    9 +-
 .../samples/SamplesScalaZincIntegrationTest.groovy |    4 +-
 .../api/internal/tasks/DefaultScalaSourceSet.java  |   12 +-
 .../internal/tasks/scala/ScalaCompilerFactory.java |    6 +-
 .../java/org/gradle/api/tasks/ScalaSourceSet.java  |   13 +-
 .../org/gradle/api/tasks/scala/ScalaCompile.java   |    6 +-
 .../tasks/DefaultScalaSourceSetTest.groovy         |    8 +
 subprojects/smoke-test/smoke-test.gradle           |    8 +
 .../smoketests/CacheInitScriptsSmokeTest.groovy    |  116 ++
 .../smoketests/GradleScriptKotlinSmokeTest.groovy  |   42 +
 .../org/gradle/smoketests/GrettySmokeTest.groovy   |   15 +-
 .../smoketests/ThirdPartyPluginsSmokeTest.groovy   |    4 +-
 .../smoketests/cache-init-scripts/build.gradle     |    9 +
 .../cache-init-scripts/src/main/java/Hello.java    |    5 +
 .../cache-init-scripts/taskCacheInit.gradle        |    1 +
 .../gsk-multi-project-with-buildSrc/README.md      |   19 +
 .../bluewhale/build.gradle.kts                     |    3 +
 .../build.gradle.kts                               |    9 +
 .../buildSrc/build.gradle.kts                      |   17 +
 .../buildSrc/settings.gradle                       |    1 +
 .../buildSrc/src/main/kotlin/HelloTask.kt          |   21 +
 .../krill/build.gradle.kts                         |    3 +
 .../settings.gradle                                |    8 +
 subprojects/soak/soak.gradle                       |    7 +-
 .../DaemonPerformanceMonitoringSoakTest.groovy     |    7 +-
 .../resolve/DependencyResolutionStressTest.groovy  |    6 +-
 .../http/HttpTaskOutputCacheIntegrationTest.groovy |  248 ---
 .../tasks/http/HttpTaskOutputCacheTest.groovy      |   62 -
 .../cache/tasks/http/HttpTaskOutputCache.java      |  121 --
 .../tasks/http/HttpTaskOutputCacheFactory.java     |   47 -
 .../runner/BaseGradleRunnerIntegrationTest.groovy  |   34 +-
 .../runner/GradleRunnerCacheIntegrationTest.groovy |   83 +
 ...GradleRunnerCaptureOutputIntegrationTest.groovy |    2 +-
 .../GradleRunnerIsolationIntegrationTest.groovy    |    6 +-
 .../GradleRunnerResultIntegrationTest.groovy       |   26 +-
 .../runner/fixtures/WithNoSourceTaskOutcome.java   |   33 +
 .../org/gradle/testkit/runner/GradleRunner.java    |    2 +-
 .../org/gradle/testkit/runner/TaskOutcome.java     |   26 +-
 .../runner/internal/ToolingApiGradleExecutor.java  |   27 +-
 .../testing/JULRedirectorIntegrationTest.groovy    |    4 +
 .../tasks/testing/AbstractTestDescriptor.java      |    4 +-
 .../tasks/testing/DefaultTestDescriptor.java       |    4 +-
 .../tasks/testing/DefaultTestOutputEvent.java      |    4 +-
 .../tasks/testing/DefaultTestSuiteDescriptor.java  |    4 +-
 .../tasks/testing/SuiteTestClassProcessor.java     |    2 +-
 .../internal/tasks/testing/TestClassRunInfo.java   |    4 +-
 .../internal/tasks/testing/TestCompleteEvent.java  |    4 +-
 .../api/internal/tasks/testing/TestStartEvent.java |    4 +-
 .../tasks/testing/processors/TestMainAction.java   |    2 +-
 .../testing/worker/ForkingTestClassProcessor.java  |    1 +
 .../internal/tasks/testing/worker/TestWorker.java  |    4 +-
 .../testing/worker/WorkerTestClassProcessor.java   |    2 +-
 .../base/plugins/TestingModelBasePlugin.java       |   13 +-
 .../testing/SuiteTestClassProcessorTest.groovy     |    2 +-
 .../testing/processors/TestMainActionTest.groovy   |    2 +-
 .../worker/ForkingTestClassProcessorTest.groovy    |    4 +-
 .../gradle/testing/TestTaskIntegrationTest.groovy  |    6 +-
 .../TestTaskJdkRelocationIntegrationTest.groovy    |  102 ++
 .../TestTaskRelocationIntegrationTest.groovy       |   74 +
 .../detection/AbstractTestFrameworkDetector.java   |    6 +-
 .../testing/detection/DefaultTestExecuter.java     |   23 +-
 .../testing/detection/TestFrameworkDetector.java   |    4 +-
 .../testing/junit/JUnitTestClassProcessor.java     |    2 +-
 .../tasks/testing/junit/JUnitTestEventAdapter.java |    2 +-
 .../tasks/testing/junit/JUnitTestFramework.java    |    2 +-
 .../junit/TestClassExecutionEventGenerator.java    |    2 +-
 .../testing/junit/report/DefaultTestReport.java    |    7 +-
 .../result/Binary2JUnitXmlReportGenerator.java     |    7 +-
 .../testing/testng/TestNGTestClassProcessor.java   |    2 +-
 .../tasks/testing/testng/TestNGTestFramework.java  |    2 +-
 .../testng/TestNGTestResultProcessorAdapter.java   |    2 +-
 .../java/org/gradle/api/tasks/testing/Test.java    |   24 +-
 .../api/tasks/testing/junit/JUnitOptions.java      |    6 +-
 .../api/tasks/testing/testng/TestNGOptions.java    |    5 +-
 .../gradle/jvm/plugins/JvmTestSuiteBasePlugin.java |    8 +-
 .../detection/DefaultTestExecuterTest.groovy       |   77 -
 .../junit/JUnitTestClassProcessorTest.groovy       |    2 +-
 .../TestClassExecutionEventGeneratorTest.groovy    |    2 +-
 .../junit/report/DefaultTestReportTest.groovy      |    3 +-
 .../Binary2JUnitXmlReportGeneratorSpec.groovy      |    3 +-
 .../testng/TestNGTestClassProcessorTest.groovy     |    2 +-
 .../CUnitDependentComponentsIntegrationSpec.groovy |    3 +-
 .../test/cunit/CUnitIntegrationTest.groovy         |    3 +-
 .../test/cunit/CUnitSamplesIntegrationTest.groovy  |   13 +-
 ...leTestDependentComponentsIntegrationSpec.groovy |    3 +-
 .../googletest/GoogleTestIntegrationTest.groovy    |   17 +-
 .../GoogleTestSamplesIntegrationTest.groovy        |   10 +-
 .../test/cunit/tasks/gradle_cunit_main.c           |    2 +-
 .../provider/runner/BuildModelActionRunner.java    |   22 +-
 .../runner/ClientForwardingBuildListener.java      |    2 +-
 .../runner/ClientForwardingTaskListener.java       |   80 +-
 .../runner/ClientForwardingTestListener.java       |   37 +-
 .../runner/ClientProvidedBuildActionRunner.java    |   14 +-
 .../provider/runner/DefaultBuildController.java    |   69 +-
 .../RunAsBuildOperationBuildActionRunner.java      |   47 +
 .../runner/SubscribableBuildActionRunner.java      |   31 +-
 .../runner/TestExecutionRequestActionRunner.java   |    2 +-
 .../runner/TestExecutionResultEvaluator.java       |   29 +-
 .../provider/runner/ToolingBuilderServices.java    |   16 +-
 .../runner/DefaultBuildControllerTest.groovy       |   42 +-
 .../runner/TestExecutionResultEvaluatorTest.groovy |    7 +-
 .../tooling-api-builders.gradle                    |    1 +
 subprojects/tooling-api/buildship.gradle           |    4 +-
 ...GlobalLoggingManipulationIntegrationTest.groovy |   12 +-
 .../SamplesToolingApiIntegrationTest.groovy        |    7 +-
 .../tooling/ToolingApiIntegrationTest.groovy       |   26 +-
 ...gApiUnsupportedClientJvmCrossVersionSpec.groovy |    2 +-
 ...sionToolingApiSpecificationRetryRuleTest.groovy |  192 +++
 .../ToolingApiEclipseModelCrossVersionSpec.groovy  |    9 +
 .../m3/ToolingApiLoggingCrossVersionSpec.groovy    |    3 +-
 .../m5/ToolingApiIdeaModelCrossVersionSpec.groovy  |   18 +-
 .../m8/ToolingApiLoggingCrossVersionSpec.groovy    |   16 +-
 .../r112/BuildInvocationsCrossVersionSpec.groovy   |   10 -
 .../DependencyMetaDataCrossVersionSpec.groovy      |    2 -
 .../ModelsWithGradleProjectCrossVersionSpec.groovy |   24 +-
 ...hGradleProjectIdentifierCrossVersionSpec.groovy |   12 +-
 .../r22/ClientShutdownCrossVersionSpec.groovy      |   23 +-
 .../r24/TestProgressCrossVersionSpec.groovy        |    8 +-
 .../r25/BuildProgressCrossVersionSpec.groovy       |    6 +-
 ...tinuousBuildCancellationCrossVersionSpec.groovy |    2 +-
 ...pportedToolingApiVersionCrossVersionSpec.groovy |    6 +-
 .../r25/TaskProgressCrossVersionSpec.groovy        |   54 +-
 .../r26/BuildProgressCrossVersionSpec.groovy       |    8 +-
 .../r26/TestLauncherCrossVersionSpec.groovy        |   26 +-
 ...teDependencySubstitutionCrossVersionSpec.groovy |  141 ++
 ...teDependencySubstitutionCrossVersionSpec.groovy |  149 ++
 .../r31/ToolingApiIdeaModelCrossVersionSpec.groovy |    7 +-
 ...NonSerializableExceptionCrossVersionSpec.groovy |    9 +-
 ...tionCompatibilityMappingCrossVersionSpec.groovy |   77 +
 ...uildActionCompositeBuildCrossVersionSpec.groovy |   62 +
 .../r33/BuildProgressCrossVersionSpec.groovy       |  426 +++++
 .../CacheableTaskOutcomeCrossVersionSpec.groovy    |  102 ++
 ...xecutionOnIncludedBuildsCrossVersionSpec.groovy |  105 ++
 .../tooling/r33/FetchBuildEnvironments.java        |   38 +
 .../tooling/r33/FetchBuildInvocations.java         |   29 +
 .../tooling/r33/FetchEclipseProjects.java          |   46 +
 .../integtests/tooling/r33/FetchGradleBuild.java   |   29 +
 .../integtests/tooling/r33/FetchIdeaProject.java   |   29 +
 .../tooling/r33/FetchIncludedBuildInvocations.java |   38 +
 .../tooling/r33/FetchIncludedGradleProjects.java   |   38 +
 .../r33/GradleBuildModelCrossVersionSpec.groovy    |   70 +
 .../r33/IdeaProjectModelCrossVersionSpec.groovy    |   40 +
 .../r33/IncompatibilityCrossVersionSpec.groovy     |  134 ++
 .../tooling/r34/BuildActionCrossVersionSpec.groovy |   61 +
 .../r34/NoSourceTaskOutcomeCrossVersionSpec.groovy |   67 +
 .../r34/ToolingApiIdeaModelCrossVersionSpec.groovy |  144 ++
 .../java/org/gradle/tooling/GradleConnector.java   |    2 +-
 .../tooling/events/task/TaskSuccessResult.java     |   16 +-
 .../task/internal/DefaultTaskSuccessResult.java    |    8 +-
 .../internal/adapter/ProtocolToModelAdapter.java   |    9 +-
 .../internal/build/DefaultBuildEnvironment.java    |   17 +-
 .../connection/DefaultBuildIdentifier.java         |   59 -
 .../connection/DefaultProjectIdentifier.java       |   71 -
 .../internal/consumer/DefaultModelBuilder.java     |    1 -
 .../consumer/ProjectConnectionBuildLauncher.java   |    1 -
 .../internal/consumer/SynchronizedLogging.java     |    4 +-
 .../connection/AbstractBuildController.java        |   45 +
 .../connection/AbstractConsumerConnection.java     |    1 -
 .../connection/ActionAwareConsumerConnection.java  |   47 +-
 .../BuildActionRunnerBackedConsumerConnection.java |   27 +-
 .../connection/BuildControllerAdapter.java         |   58 +-
 .../BuildInvocationsAdapterController.java         |   45 +
 .../connection/CancellableConsumerConnection.java  |   31 +-
 ...CancellableModelBuilderBackedModelProducer.java |    1 -
 .../connection/HasCompatibilityMapping.java        |   33 +-
 .../connection/InternalBuildActionAdapter.java     |   14 +-
 .../ModelBuilderBackedConsumerConnection.java      |   17 +-
 .../ModelBuilderBackedModelProducer.java           |    1 -
 .../BasicGradleProjectIdentifierMixin.java         |   15 +-
 .../converters/BuildInvocationsConverter.java      |   12 +-
 .../ConsumerProvidedBuildInvocations.java          |   12 +-
 .../converters/FixedBuildIdentifierProvider.java   |   18 +-
 .../consumer/converters/GradleBuildConverter.java  |    5 +-
 .../converters/GradleProjectIdentifierMixin.java   |   15 +-
 .../converters/IdeaModelCompatibilityMapping.java  |   54 -
 .../consumer/converters/IncludedBuildsMixin.java   |   30 +
 .../TaskDisplayNameCompatibilityMapping.java       |   37 -
 .../consumer/converters/TaskNameComparator.java    |    3 +-
 .../parameters/BuildProgressListenerAdapter.java   |    7 +-
 .../parameters/ConsumerOperationParameters.java    |   22 +-
 .../consumer/versioning/VersionDetails.java        |  119 +-
 .../internal/gradle/BasicGradleProject.java        |    5 +-
 .../internal/gradle/ConsumerProvidedTask.java      |    3 +-
 .../gradle/ConsumerProvidedTaskSelector.java       |    3 +-
 .../internal/gradle/DefaultBuildIdentifier.java    |   38 +
 .../internal/gradle/DefaultGradleBuild.java        |   23 +-
 .../internal/gradle/DefaultGradleProject.java      |   87 +-
 .../internal/gradle/DefaultGradlePublication.java  |   23 +-
 .../internal/gradle/DefaultProjectIdentifier.java  |   52 +
 .../gradle/DefaultProjectPublications.java         |   23 +-
 .../internal/gradle/GradleBuildIdentity.java       |   23 +
 .../internal/gradle/GradleProjectIdentity.java     |    4 +-
 .../internal/gradle/PartialBasicGradleProject.java |   31 +-
 .../internal/gradle/PartialGradleProject.java      |   98 --
 .../internal/protocol/ConnectionVersion4.java      |    1 -
 .../internal/protocol/InternalLaunchable.java      |    4 +-
 .../protocol/events/InternalTaskCachedResult.java  |   26 +
 .../org/gradle/tooling/model/BuildIdentifier.java  |   11 +-
 .../org/gradle/tooling/model/HasGradleProject.java |    8 +-
 .../gradle/tooling/model/ProjectIdentifier.java    |   12 +-
 .../gradle/tooling/model/gradle/GradleBuild.java   |   10 +-
 .../tooling/model/gradle/GradlePublication.java    |   13 +-
 .../tooling/model/gradle/ProjectPublications.java  |    2 +-
 .../org/gradle/tooling/model/idea/IdeaModule.java  |    9 +
 .../tooling/model/idea/IdeaModuleDependency.java   |    1 +
 .../consumer/DefaultBuildLauncherTest.groovy       |    4 +-
 .../ActionAwareConsumerConnectionTest.groovy       |   17 +-
 ...ActionRunnerBackedConsumerConnectionTest.groovy |    1 -
 .../connection/BuildControllerAdapterTest.groovy   |   11 +-
 .../CancellableConsumerConnectionTest.groovy       |   10 +-
 ...lableModelBuilderBackedModelProducerTest.groovy |    2 +-
 .../GradleBuildAdapterProducerTest.groovy          |    3 +-
 ...ModelBuilderBackedConsumerConnectionTest.groovy |    1 -
 .../ModelBuilderBackedModelProducerTest.groovy     |    2 +-
 .../converters/GradleBuildConverterTest.groovy     |    5 +-
 .../ConsumerOperationParametersTest.groovy         |    4 +-
 .../gradle/DefaultGradleProjectTest.groovy         |   12 +-
 .../fixture/AbstractToolingApiSpecification.groovy |   98 --
 .../ContinuousBuildToolingApiSpecification.groovy  |   36 +-
 .../tooling/fixture/IgnoreIntegratedComposite.java |   28 -
 .../tooling/fixture/ProgressEvents.groovy          |   60 +-
 .../fixture/RequiresIntegratedComposite.java       |   28 -
 .../integtests/tooling/fixture/ToolingApi.groovy   |   23 +-
 .../fixture/ToolingApiDistributionResolver.groovy  |    6 +-
 .../tooling/fixture/ToolingApiExecution.groovy     |    2 +-
 .../tooling/fixture/ToolingApiSpecification.groovy |  229 ++-
 .../tooling/fixture/ToolingApiVersions.java        |   11 -
 subprojects/tooling-api/tooling-api.gradle         |   84 +-
 ...projectProjectAndTaskListIntegrationTest.groovy |    6 +
 subprojects/ui/ui.gradle                           |    4 +
 subprojects/version-info/version-info.gradle       |  160 ++
 ...stractWorkerDaemonServiceIntegrationTest.groovy |  205 +++
 .../WorkerDaemonExpirationIntegrationTest.groovy   |   73 +
 ...aemonServiceErrorHandlingIntegrationTest.groovy |  330 ++++
 .../WorkerDaemonServiceIntegrationTest.groovy      |  409 +++++
 ...orkerDaemonServiceLoggingIntegrationTest.groovy |  154 ++
 .../daemon/WorkerDaemonExecutionException.java     |   37 +
 .../process/daemon/WorkerDaemonExecutor.java       |   71 +
 .../gradle/process/daemon/WorkerDaemonService.java |   34 +
 .../org/gradle/process/daemon/package-info.java    |   20 +
 .../gradle/process/internal/WorkersServices.java   |   73 +
 .../daemon/AbstractWorkerDaemonExecutor.java       |  144 ++
 .../process/internal/daemon/DaemonForkOptions.java |  133 ++
 .../daemon/DefaultWorkerDaemonService.java         |   36 +
 .../gradle/process/internal/daemon/WorkSpec.java   |   22 +
 .../process/internal/daemon/WorkerDaemon.java      |   23 +
 .../internal/daemon/WorkerDaemonAction.java        |   25 +
 .../internal/daemon/WorkerDaemonClient.java        |   62 +
 .../daemon/WorkerDaemonClientsManager.java         |  107 ++
 .../internal/daemon/WorkerDaemonExpiration.java    |  117 ++
 .../internal/daemon/WorkerDaemonFactory.java       |   24 +
 .../internal/daemon/WorkerDaemonManager.java       |   63 +
 .../internal/daemon/WorkerDaemonProtocol.java      |   21 +
 .../internal/daemon/WorkerDaemonResult.java        |   45 +
 .../daemon/WorkerDaemonRunnableExecutor.java       |   78 +
 .../internal/daemon/WorkerDaemonServer.java        |   41 +
 .../internal/daemon/WorkerDaemonStarter.java       |   64 +
 .../internal/daemon/WorkerDaemonWorker.java        |   22 +
 ...e.internal.service.scopes.PluginServiceRegistry |    1 +
 .../daemon/AbstractWorkerDaemonExecutorTest.groovy |  113 ++
 .../daemon/DaemonForkOptionsMergeTest.groovy       |   52 +
 .../internal/daemon/DaemonForkOptionsTest.groovy   |  176 ++
 .../daemon/DefaultWorkerDaemonServiceTest.groovy   |   36 +
 .../internal/daemon/WorkerDaemonClientTest.groovy  |  109 ++
 .../daemon/WorkerDaemonClientsManagerTest.groovy   |  152 ++
 .../daemon/WorkerDaemonExpirationTest.groovy       |  157 ++
 .../internal/daemon/WorkerDaemonManagerTest.groovy |  118 ++
 .../daemon/WorkerDaemonRunnableExecutorTest.groovy |   72 +
 .../child/BootstrapSecurityManagerTest.groovy      |    0
 .../worker/child/SerializableMockHelper.groovy     |    0
 .../WorkerProcessClassPathProviderTest.groovy      |    0
 subprojects/workers/workers.gradle                 |   11 +
 .../AbstractWrapperIntegrationSpec.groovy          |    3 +-
 .../WrapperGenerationIntegrationTest.groovy        |    2 +-
 .../gradle/wrapper/ExclusiveFileAccessManager.java |    8 +-
 subprojects/wrapper/wrapper.gradle                 |   23 +-
 version.txt                                        |    2 +-
 2581 files changed, 88170 insertions(+), 31153 deletions(-)

diff --cc debian/changelog
index 2822025,4ae95dc..3c783dc
--- a/debian/changelog
+++ b/debian/changelog
@@@ -1,11 -1,59 +1,64 @@@
- gradle (3.2.1-6) UNRELEASED; urgency=medium
+ gradle (3.4.1-4) UNRELEASED; urgency=medium
  
    * Team upload.
-   * Removed the build dependency on libwagon2-java
-   * Standards-Version updated to 4.1.3
++
++  [ tony mancill ]
+   * Update jansi.patch to avoid missing groupId in gradle-logging.pom.
+     This addresses FTBFS in any package that transitively depends upon
+     gradle-logging.
+   * Add Apache NOTICE file to binary packages to resolve lintian error.
+ 
++  [ Emmanuel Bourg ]
 +  * Switch to debhelper level 11
 +
-  -- Emmanuel Bourg <ebourg at apache.org>  Fri, 23 Feb 2018 01:10:51 +0100
+  -- tony mancill <tmancill at debian.org>  Sun, 25 Mar 2018 11:34:50 -0700
+ 
+ gradle (3.4.1-3) experimental; urgency=medium
+ 
+   * Team upload.
+ 
+   [ Emmanuel Bourg ]
+   * Removed the build dependency on libwagon2-java
+   * Standards-Version updated to 4.1.2
+ 
+   [ Tiago Daitx ]
+   * d/p/cast-estimated-runtime-to-long.patch: fix FTBFS due to missing cast.
+     (Closes: #893487)
+   * d/p/support-running-gradle-on-jdk-10-500485df3a18.patch,
+     d/p/add-test-case-for-10-internal_c1fe5e40a76b.patch,
+     d/p/support-zulu9-version-number_d9c35cf9d74c.patch: prevent failures when
+     building projects with openjdk 9.
+ 
+   [ tony mancill ]
+   * Bump Standards-Version to 4.1.3
+   * Remove Damien Raude-Morvan from Uploaders (Closes: #889385)
+ 
+  -- tony mancill <tmancill at debian.org>  Sat, 24 Mar 2018 20:41:32 -0700
+ 
+ gradle (3.4.1-2) experimental; urgency=medium
+ 
+   * Team upload.
+   * libgradle-core-java.links: Fix symlink of gradle-version-info.jar.
+   * Update use-local-artifacts.patch and register junit4 instead of junit as an
+     external module. This will fix the build failure with Mockito.
+ 
+  -- Markus Koschany <apo at debian.org>  Wed, 29 Nov 2017 16:09:02 +0100
+ 
+ gradle (3.4.1-1) experimental; urgency=medium
+ 
+   * Team upload.
+   * New upstream version 3.4.1.
+   * Remove the symlink and entry for subproject gradle-task-cache-http because
+     it is gone.
+   * Drop fix-classpath-annotation.patch. Apparently it is no longer required.
+   * Refresh and update all other patches to make the package compile.
+   * Fix two FTBFS by adding jansi.patch and commons-io.patch.
+   * Symlink WriteProperties.java and PropertiesUtils.java into buildSrc
+     directory to avoid another FTBFS due to missing WriteProperties class.
+   * Tighten build-dependency of libnative-platform-java to >= 0.14.
+   * libgradle-core-java: Install new gradle-workers and gradle-version-info jar.
+ 
+  -- Markus Koschany <apo at debian.org>  Sat, 25 Nov 2017 16:59:33 +0100
  
  gradle (3.2.1-5) unstable; urgency=medium
  

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/gradle.git



More information about the pkg-java-commits mailing list