Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Move Java sources from src/main/groovy to src/main/java

There are no Groovy sources left, so there's no need to keep these files in src/main/groovy. We can also save build time by only invoking a single compiler instead of two for these projects.

    • -84
    • +0
    ./application/CreateStartScripts.java
  1. … 370 more files in changeset.
Make War and Ear cacheable tasks

+review REVIEW-6250

  1. … 1 more file in changeset.
Mark classpaths as `@Classpath`

Instead of annotating with `@InputFiles` and `@OrderSensitive`, we now have only `@Classpath`.

This also enables relative path normalization for every classpath property.

+review REVIEW-6241

  1. … 32 more files in changeset.
GRADLE-3522 Add back some type safety.

  1. … 1 more file in changeset.
GRADLE-3522 Add null check.

GRADLE-3522 Use a FileCollection as input to copy spec to avoid eager dependency resolution

  1. … 1 more file in changeset.
Make Upload.descriptorDestination internal

It is only a temporary file created by the task, not real its output.

+review REVIEW-5932

Mark all classpath task properties order-sensitive

All classpaths should respect file order.

+review REVIEW-6114

  1. … 26 more files in changeset.
Introduce `@CacheableTask` annotation

This annotation marks task types that can be cached by default in the task output cache.

+review REVIEW-6112

  1. … 10 more files in changeset.
Introduce `CopySpec#rename(Transformer)` in place of `CopySpec#transform(Closure)`

+review REVIEW-6088

  1. … 6 more files in changeset.
Add `CopySpec#into(Object, Action)`

This commit introduces an alternative to `into(Object, Closure)` for type

safety and deprecates the `Closure` version, to be able to remove this

method in Gradle 4.0.

+review REVIEW-6088

  1. … 7 more files in changeset.
Fix checkstyle

+review REVIEW-6081

    • -0
    • +80
    ./application/CreateStartScripts.java
Converted `War` to Java

This commit converts the `War` task from Groovy to Java, but doesn't remove

all usage of Groovy internally, because the `CopySpec` interface lacks the

necessary static-friendly methods. Replaced usage of `Closure` with `Callable`

whenever possible.

+review REVIEW-6081

    • -0
    • +169
    ./bundling/War.java
  1. … 1 more file in changeset.
Converted `CreateStartScripts` task to Java

Also sorted the `converted-types.txt` file for readability

+review REVIEW-6081

    • -20
    • +0
    ./application/CreateStartScripts.groovy
  1. … 1 more file in changeset.
Added missing file header.

Converted `o.g.api.tasks.bundling.Jar` from Groovy to Java.

  1. … 3 more files in changeset.
Merge Module and ModuleInternal as both are internal

  1. … 26 more files in changeset.
Mark any un-annotated task properties with `@Internal`

+review REVIEW-5932

  1. … 34 more files in changeset.
Add missing annotations to task properties

+review REVIEW-5932

  1. … 4 more files in changeset.
Annotate more task properties

Part of this is fixing missing annotations. Part is applying the new

`@Console` and `@Internal` annotations where appropriate.

+review REVIEW-5932

  1. … 80 more files in changeset.
Revert "Annotate more task properties"

This reverts commit 4b32689375b46bb01ace46d5255118683c7c13ed.

  1. … 68 more files in changeset.
Annotate more task properties

Part of this is fixing missing annotations. Part is applying the new

`@Console` and `@Internal` annotations where appropriate.

+review REVIEW-5932

  1. … 68 more files in changeset.
Refine javadoc around fixing GRADLE-1506

+review REVIEW-5914

  1. … 3 more files in changeset.
JAR metadata charset now defaults to UTF-8, fixes GRADLE-1506

One can use the `metadataCharset` property to set a different charset

and Charset.defaultCharset().name() as a value to fallback to previous

behaviour.

+review REVIEW-5914

  1. … 5 more files in changeset.
Add 'compileClasspath' configuration to all source sets

- Creates another configuration, 'compileClasspath', for all source sets

- This configuration extends from 'compileOnly'

- Source set's compileClasspath is set to 'compileClasspath' configuration

+review REVIEW-5807

  1. … 17 more files in changeset.
Mark new API as incubating

+review REVIEW-5807

Add 'compileOnly' configuration for each source set.

This commit creates a new 'compileOnly' configuration for each declared source set. Dependencies added to this source set are used during compilation only. They are not included on the runtime classpath, are not inherited by test classpath, are not included in 'deployable' artifacts such as WARs, EARs or application distributions, are not exported to consuming projects, and are not included in published metadata.

+review REVIEW-5807

  1. … 22 more files in changeset.
`coll.toArray(new T[coll.size()])` => `coll.toArray(new T[0])`

> Bottom line: toArray(new T[0]) seems faster, safer, and contractually cleaner, and therefore should be the default choice now. Future VM optimizations may close this performance gap for toArray(new T[size]), rendering the current "believed to be optimal" usages on par with an actually optimal one. Further improvements in toArray APIs would follow the same logic as toArray(new T[0]) — the collection itself should create the appropriate storage.

http://shipilev.net/blog/2016/arrays-wisdom-ancients/

Let's see what our performance tests say, if this is noticeable at all.

Changes made by IDEA "Structural Replace":

$coll$.toArray(new $T$[$coll$.size()])

=>

$coll$.toArray(new $T$[0])

+review REVIEW

  1. … 38 more files in changeset.
Introduce `testing-base` module

This commit introduces a new `testing-base` module aimed at detangling the `plugins` module, by extracting 2 things:

* classes that are used independently of a testing framework or the JVM (`TestDescriptor`, ...)

* classes which are specific to JVM testing (`Test`, `TestReport`, `TestWorker`, ...)

The first category are extracted in the `testing-base` module. The second category have been migrated to the `testing-jvm` module, which now includes TestNG specific classes too.

* The `testing-jvm` module no longer depends on `plugins`, but on `testing-base` instead.

* The `plugins` module now depends on `testing-jvm` (so we have effectively inverted the dependency).

It's worth noting that while main classes have been shuffled around, test classes have not been moved, and some quality checks had to be disabled. For example, strict compilation and classcycle cannot be used anymore in the `testing-jvm` module without introducing breaking changes.

Two classes (`JUnitOptions` and `TestNGOptions`) have been migrated from Groovy to Java.

At this point, building Gradle is broken. Subsequent commits will fix that.

Story: gradle/langos#103

Item: refactor-plugins

    • -36
    • +0
    ./testing/TestExecutionException.java
    • -23
    • +0
    ./testing/TestFrameworkOptions.java
    • -51
    • +0
    ./testing/junit/JUnitOptions.groovy
    • -31
    • +0
    ./testing/logging/TestExceptionFormat.java
  1. … 264 more files in changeset.
Incorporated feedback.

  1. … 6 more files in changeset.