Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Move XcTest task implementation to the AbstractTestTask

    • -145
    • +0
    ./AggregateTestResultsProvider.java
    • -103
    • +0
    ./Binary2JUnitXmlReportGenerator.java
    • -84
    • +0
    ./BinaryResultBackedTestResultsProvider.java
    • -53
    • +0
    ./TestOutputStoreBackedResultsProvider.java
  1. … 25 more files in changeset.
Simplify time handling internally and for build scans (#2857)

* Don't make TimeProvider Serializable.

This isn't safe and generally doesn't make sense.

* Extract and promote the concept of a build timer.

This was previously not well defined and being overlaid with the concept of when a user/tool requested something, which is not always the same thing.

* Pare down the deprecated org.gradle.util.Clock down to the minimum required.

Internal usage is replaced by a `getStartTime()` directly on BuildRequestContext.

What is left is only kept for backwards compatibility with scans.

* Rename TimeProvider to Clock.

* Move BuildExecutionTimer out of baseServices into core, and into a better package.

* Remove unused.

* Simplify the time package by merging types.

* Prevent the client's build started timestamp from being later than when the provider received the build request.

* Provide a dedicated mechanism for conveying the build start time to build scans.

* Consolidate the ways of formatting durations.

  1. … 179 more files in changeset.
Spike AbstractTestTask

    • -103
    • +0
    ./Binary2JUnitXmlReportGenerator.java
    • -53
    • +0
    ./TestOutputStoreBackedResultsProvider.java
  1. … 57 more files in changeset.
Some tweaks to build operation display names, to reflect some human consumable identify of the operation rather than a statement of what Gradle happened to be doing when the operation started.

  1. … 5 more files in changeset.
Make test result reader more efficient

    • -5
    • +0
    ./BinaryResultBackedTestResultsProvider.java
    • -10
    • +20
    ./TestOutputStoreBackedResultsProvider.java
Unify BuildOperationExecutor and BuildOperationProcessor APIs

This introduces the following `BuildOperationExecutor`

interface (as outlined in gradle/gradle#1676):

void run(RunnableBuildOperation buildOperation);

<T> T call(CallableBuildOperation<T> buildOperation);

<O extends RunnableBuildOperation> void runAll(

Action<BuildOperationQueue<O>> schedulingAction);

<O extends BuildOperation> void runAll(

BuildOperationWorker<O> worker,

Action<BuildOperationQueue<O>> schedulingAction);

To accomplish this, the following changes were performed:

- Various representation of build operations have been merged into

1) BuildOperation (with sub-interfaces)

-> declare and describe a build operation

2) BuildOperationDescriptor (BuildOperationDescriptor.Builder)

-> describe a build operation

3) BuildOperationState

-> represents a running build operation, with run state, start time,

parent relationship information, and description

- The DefaultBuildOperationExecutor and DefaultBuildOperationProcessor

implementations have been merged in DefaultBuildOperationExecutor,

which is now build session scoped.

    • -8
    • +10
    ./Binary2JUnitXmlReportGenerator.java
  1. … 180 more files in changeset.
Introduce Timer abstractions for simpler timekeeping

- Timer provides a 'stopwatch' function, with the benefit of a nicely

formatted elapsed time.

- CountdownTimer tracks if a timeout limit has been reached.

  1. … 22 more files in changeset.
Moved `Clock` and `TimeProvider` into a separate package

This commit reverts recent changes to the API of

`org.gradle.util.Clock`, and instead deprecates the existing type

replacing with a new internal type. This was done because the

`ExtractDslMetaDataTask` uses this type for timing, and external plugins may have copied this pattern.

`org.gradle.util.Clock` is now deprecated.

  1. … 103 more files in changeset.
Clarifying renames in o.g.util.Clock

- `start` -> `startInstant`

- `getTimeInMillis()` -> `getElapsedMillis()`

- `getTime()` -> `getElapsed()`

  1. … 22 more files in changeset.
Changed `Test` task to lookup host name once per build process rather than for each test instance.

    • -12
    • +2
    ./Binary2JUnitXmlReportGenerator.java
  1. … 5 more files in changeset.
Busted up some package cycles and switched on classcycle checks for 'messaging' project.

  1. … 32 more files in changeset.
Moved `o.g.messaging.*` to `o.g.internal.*`.

  1. … 295 more files in changeset.
Fixing thread safety issue with BinaryResultBackedTestResultsProvider

+review REVIEW-5884

    • -12
    • +32
    ./BinaryResultBackedTestResultsProvider.java
    • -0
    • +43
    ./TestOutputStoreBackedResultsProvider.java
Changing InMemoryTestResultsProvider to be thread safe.

+review REVIEW-5884

    • -12
    • +47
    ./InMemoryTestResultsProvider.java
  1. … 1 more file in changeset.
Changing test report generation to use the build operation queue

+review REVIEW-5884

    • -16
    • +49
    ./Binary2JUnitXmlReportGenerator.java
  1. … 10 more files in changeset.
Some changes to buffering when generating test result xml and html and Ivy.xml files, to make this generation more efficient.

Previously the buffering was set up so that each character was encoded individually. Changed to buffer prior to encoding rather than after.

  1. … 3 more files in changeset.
Add @Override where missing in production software model sources

Prior to this change, the affected submodules had 2044 occurrences of

the @Override annotation. With this commit, there are now 3492

occurrences. This suggests some divergence in IDE settings, either

across developers, across time, or both. At the moment, it appears that

IDEA (15 CE) is configured correctly to add @Override automatically.

This same refactoring should probably be done globally acrosse the

Gradle codebase, but has been constrained here to software model-related

submodules (a) because it is what the author is responsible for and (b)

because significant refactoring of type hierarchies is underway there

right now--the kind of work most likely to benefit from the compiler

checks that proper use of @Override affords.

Should this same refactoring be applied globally, it would be worth

looking into enforcing consistent use of @Override via checkstyle or

similar at the same time.

    • -1
    • +8
    ./BinaryResultBackedTestResultsProvider.java
  1. … 415 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

    • -0
    • +138
    ./AggregateTestResultsProvider.java
    • -0
    • +78
    ./Binary2JUnitXmlReportGenerator.java
    • -0
    • +62
    ./BinaryResultBackedTestResultsProvider.java
    • -0
    • +63
    ./InMemoryTestResultsProvider.java
    • -0
    • +124
    ./JUnitXmlResultWriter.java
    • -0
    • +94
    ./TestClassResult.java
    • -0
    • +83
    ./TestMethodResult.java
    • -0
    • +22
    ./TestOutputAssociation.java
    • -0
    • +388
    ./TestOutputStore.java
    • -0
    • +139
    ./TestReportDataCollector.java
    • -0
    • +152
    ./TestResultSerializer.java
    • -0
    • +50
    ./TestResultsProvider.java
  1. … 266 more files in changeset.