Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Force AbstractTestDirectoryProvider to use Class (#12431)

Closes https://github.com/gradle/gradle-private/issues/2988

This PR adds `className` to `AbstractTestDirectoryProvider` so there'll be no more `unknown-test-class`.

  1. … 407 more files in changeset.
Fix tests

  1. … 372 more files in changeset.
Polish code

  1. … 2 more files in changeset.
Rename StaleClassCleaner to StaleOutputCleaner and add Javadoc

    • -88
    • +0
    ./tasks/StaleClassCleanerTest.groovy
    • -0
    • +88
    ./tasks/StaleOutputCleanerTest.groovy
  1. … 12 more files in changeset.
Merge StaleClassCleaner with SimpleStaleClassCleaner

    • -130
    • +0
    ./tasks/SimpleStaleClassCleanerTest.groovy
    • -0
    • +88
    ./tasks/StaleClassCleanerTest.groovy
  1. … 3 more files in changeset.
Use Deleter in cleaning stale outputs, take 2

This covers the remaining use cases:

- stale class cleanup for compilers

- stale overlapping output cleanup

    • -7
    • +10
    ./tasks/SimpleStaleClassCleanerTest.groovy
  1. … 30 more files in changeset.
Delete empty package directories

When all classes of a package have been removed,

the package directory in the output directory

will now be removed as well. This ensures that

the resulting JAR will be byte-for-byte equivalent

to a clean build.

    • -12
    • +58
    ./tasks/SimpleStaleClassCleanerTest.groovy
  1. … 5 more files in changeset.
Delete stale generated sources on full recompiles

Fixes https://github.com/gradle/gradle/issues/4935

    • -3
    • +3
    ./tasks/SimpleStaleClassCleanerTest.groovy
  1. … 13 more files in changeset.
Cleanup directories when sources become empty (#2611)

Cleanup directories when sources become empty and not only files.

- Improved performance for SkipEmptySourceFilesTaskExecuter

It is not necessary to resolve a FileCollection when checking if the

previous execution had output files.

Moreover, we now record the empty output files after we deleted them,

so the task has to do less work next time.

    • -5
    • +11
    ./tasks/SimpleStaleClassCleanerTest.groovy
  1. … 13 more files in changeset.
Improve fully qualified representation of nested model types

Use `.` instead of `$` to separate the enclosing type name from the

nested type name.

    • -1
    • +3
    ./ComponentTypeModelRuleExtractorTest.groovy
    • -1
    • +3
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 23 more files in changeset.
Move JVM-component dependency resolution classes

Moved a lot of classes from ':platform-base' to ':platform-jvm',

and restructured into common `org.gradle.jvm.internal.resolve` package.

    • -75
    • +0
    ./model/DefaultVariantsMetaDataTest.groovy
    • -26
    • +0
    ./model/ParametrizedBinaryString.java
    • -26
    • +0
    ./model/ParametrizedBinaryVariantDimension1.java
    • -107
    • +0
    ./model/VariantsMetaDataHelperTest.groovy
  1. … 51 more files in changeset.
Move some JVM-specific resolution types into :platform-jvm

- Remove use of `UsageKind` from generic component-model dependency resolution

- Renamed and moved JVM-specific resolve context

    • -50
    • +0
    ./resolve/LocalComponentResolveContextTest.groovy
  1. … 10 more files in changeset.
Revert "Expose per-property previous task output files"

This reverts commit 49d7688ffcff55bcbb915f615449b8f47c43d043.

+review REVIEW-6141

    • -4
    • +8
    ./tasks/SimpleStaleClassCleanerTest.groovy
  1. … 28 more files in changeset.
Expose per-property previous task output files

Output files from the previous execution were accessible as a single file collection previously. Now it is possible to query per-property instead. This simplifies the logic somewhat (no need to filter files belonging to other properties). This is also a step towards a more optimal implementation for output directory snapshots, where we can reconstruct the absolute paths of files from the directory path and relative paths of files (instead of storing the full absolute path).

+review REVIEW-6141

    • -8
    • +4
    ./tasks/SimpleStaleClassCleanerTest.groovy
  1. … 27 more files in changeset.
Clarify and document internal code

+review REVIEW-6141

    • -4
    • +4
    ./tasks/SimpleStaleClassCleanerTest.groovy
  1. … 5 more files in changeset.
Rename Buildable{ModelElement => ComponentSpec}

This rename better reflects the fact that (the former)

BuildableModelElement now extends ComponentSpec, and in the process

helps to eliminate the unnecessary concept of "model elements" in favor

of referring to everything in terms of components and component specs.

Javadoc in BuildableComponentSpec and certain parameters and member

variables in AbstractBuildableComponentSpec have also been updated and

renamed for clarity and consistency.

    • -2
    • +2
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 25 more files in changeset.
Replace `@BinaryType` and `@LanguageType` with `@ComponentType`

The original annotations have been retained for the purpose of

deprecation but they no longer work.

    • -4
    • +4
    ./ComponentTypeModelRuleExtractorTest.groovy
    • -21
    • +21
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 63 more files in changeset.
Split up `ComponentModelBasePlugin` to 2 separate plugins: one which deals with the very base `ComponentSpec` type and infrastructure, and one which deals with the higher level component types such as `LibrarySpec` and `ApplicationSpec`.

    • -6
    • +32
    ./ComponentTypeModelRuleExtractorTest.groovy
  1. … 14 more files in changeset.
Merged the `BinarySpec` and `LanguageSourceSet` type registries into the `ComponentSpec` registry.

The type registration annotations have not changed, however they all now act on the same registry. The annotations will be merged later.

    • -2
    • +2
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 11 more files in changeset.
Removed some unnecessary or duplicate validation from type registration rule implementation:

- Implementation class does not necessarily need to extend some base class.

- Implementation class does not need to implement public or internal view types.

- Implementation classes does not necessarily need a no-args constructor.

    • -4
    • +0
    ./ComponentTypeModelRuleExtractorTest.groovy
    • -22
    • +0
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 13 more files in changeset.
Another attempt to fix broken unit test on IBM Java 6

    • -2
    • +0
    ./ComponentTypeModelRuleExtractorTest.groovy
    • -0
    • +22
    ./SomeOtherBuilder.java
Another attempt to fix broken unit test on IBM Java 6

    • -2
    • +0
    ./ComponentTypeModelRuleExtractorTest.groovy
    • -0
    • +20
    ./NotComponentSpec.java
Another attempt to fix broken unit test on IBM Java 6

    • -0
    • +20
    ./BareInternalView.java
    • -2
    • +0
    ./ComponentTypeModelRuleExtractorTest.groovy
Fixed broken unit test on IBM Java 6

    • -2
    • +2
    ./ComponentTypeModelRuleExtractorTest.groovy
Removed the various subtypes of `TypeBuilder`. These have been replaced by `TypeBuilder`.

    • -3
    • +5
    ./ComponentTypeModelRuleExtractorTest.groovy
    • -6
    • +0
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 9 more files in changeset.
Replaced most usages of `BinaryTypeBuilder` and `ComponentTypeBuilder` with the more general `TypeBuilder`.

    • -15
    • +15
    ./ComponentTypeModelRuleExtractorTest.groovy
  1. … 48 more files in changeset.
Changed the contract for @ComponentType, @BinaryType and @LanguageType rule methods so that they may accept a `TypeBuilder` instead of the annotation-specific subtype of `TypeBuilder`.

This will allow the removal of the annotation-specific subtypes. These subtypes are all now empty.

    • -3
    • +3
    ./ComponentTypeModelRuleExtractorTest.groovy
    • -16
    • +22
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 3 more files in changeset.
Removed `LanguageTypeBuilder.languageName` property, as a name is no longer required when registering a langauge source set.

    • -7
    • +0
    ./registry/LanguageTypeModelRuleExtractorTest.groovy
  1. … 17 more files in changeset.
Avoid leaking `ModelSchemaStore` into the test suite binary

Story: gradle/langos#113

    • -1
    • +1
    ./model/DefaultVariantsMetaDataTest.groovy
    • -2
    • +4
    ./model/VariantsMetaDataHelperTest.groovy
  1. … 10 more files in changeset.
Resolved library metadata should include all usages, not a single one

Story: gradle/langos#113

    • -7
    • +8
    ./resolve/LocalComponentResolveContextTest.groovy
  1. … 10 more files in changeset.