serialize

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Handle potential failure in `getMessage`

  1. … 1 more file in changeset.
Add support for "useful NPE messages"

This commit adds special handling of null pointer exceptions

in case the current process is running on Java 14+. Without

this hack, the "improved NullPointerException messages" are

not serialized. As a consequence, the daemon cannot display

them, despite being generated on the worker.

  1. … 1 more file in changeset.
Add support for "useful NPE messages"

This commit adds special handling of null pointer exceptions

in case the current process is running on Java 14+. Without

this hack, the "improved NullPointerException messages" are

not serialized. As a consequence, the daemon cannot display

them, despite being generated on the worker.

  1. … 1 more file in changeset.
Add support for "useful NPE messages"

This commit adds special handling of null pointer exceptions

in case the current process is running on Java 14+. Without

this hack, the "improved NullPointerException messages" are

not serialized. As a consequence, the daemon cannot display

them, despite being generated on the worker.

  1. … 1 more file in changeset.
Detect special multicause exceptions

This commit fixes an issue where test reports and build scans didn't capture

all the causes of an exception, in case the "multi-cause" exception isn't

a type known of the daemon. By that, we mean a type which is not available

at runtime in the daemon process, but is used in the worker process.

Typically, the `org.opentest4j.MultipleFailuresError` type used by

JUnit is such an example: the type is used in a test process, but

not loaded in Gradle. In such cases, Gradle builds a placeholder

exception type which collects the root cause. But in case the

exception is actually collecting multiple causes like in this test

class, Gradle lost some information in the process.

Therefore, this commit introduces a heuristic to figure out if an

exception is collecting multiple causes instead of a single one.

The heuristic is kept very simple: one has to find a method which

name is either `getCauses` (like for Gradle's own default multi

cause exception) or `getFailures` (like in opentest4j), and it

has to return a collection of failures.

This will not fix all problems but it should capture a good amount

of them.

Fixes #9487

  1. … 3 more files in changeset.
Detect special multicause exceptions

This commit fixes an issue where test reports and build scans didn't capture

all the causes of an exception, in case the "multi-cause" exception isn't

a type known of the daemon. By that, we mean a type which is not available

at runtime in the daemon process, but is used in the worker process.

Typically, the `org.opentest4j.MultipleFailuresError` type used by

JUnit is such an example: the type is used in a test process, but

not loaded in Gradle. In such cases, Gradle builds a placeholder

exception type which collects the root cause. But in case the

exception is actually collecting multiple causes like in this test

class, Gradle lost some information in the process.

Therefore, this commit introduces a heuristic to figure out if an

exception is collecting multiple causes instead of a single one.

The heuristic is kept very simple: one has to find a method which

name is either `getCauses` (like for Gradle's own default multi

cause exception) or `getFailures` (like in opentest4j), and it

has to return a collection of failures.

This will not fix all problems but it should capture a good amount

of them.

Fixes #9487

  1. … 3 more files in changeset.
Annotate internal APIs used by test-distribution (#13010)

In order to avoid accidentally changing an internal API without

adjusting the test-distribution plugin, they are now annotated with

`@UsedByScanPlugin("test-distribution")`.

  1. … 30 more files in changeset.
Annotate internal APIs used by test-distribution

In order to avoid accidentally changing an internal API without

adjusting the test-distribution plugin, they are now annotated with

`@UsedByScanPlugin("test-distribution")`.

  1. … 30 more files in changeset.
Address compiler warnings in 'messaging' subproject

  1. … 4 more files in changeset.
Address compiler warnings in 'messaging' subproject

  1. … 4 more files in changeset.
Address compiler warnings in 'messaging' subproject

  1. … 4 more files in changeset.
Activate 'strict-compile' for all subprojects

  1. … 145 more files in changeset.
Remove `@ToBeFixedForInstantExecution` from `TaskParametersIntegrationTest`

Which requied codecs for `BigInteger` and `BigDecimal`.

  1. … 2 more files in changeset.
Prefer encoding small integers for dirMode & fileMode

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 3 more files in changeset.
Serialize scalar properties from CopySpec

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 3 more files in changeset.
Serialize scalar properties from CopySpec

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 3 more files in changeset.
Simplify the way that serializers for 'single request' and 'multi request' worker processors are registered, and make the serialization for requests more efficient.

  1. … 12 more files in changeset.
Simplify the way that serializers for 'single request' and 'multi request' worker processors are registered, and make the serialization for requests more efficient.

  1. … 9 more files in changeset.
Simplify the way that serializers for 'single request' and 'multi request' worker processors are registered, and make the serialization for requests more efficient.

  1. … 12 more files in changeset.
Simplify the way that serializers for 'single request' and 'multi request' worker processors are registered, and make the serialization for requests more efficient.

  1. … 12 more files in changeset.
Fixes for previous.

  1. … 1 more file in changeset.
Improve handling of startup failures in 'single request' and 'multi request' worker processes, so that the failure is propagated to the client rather than logged.

  1. … 7 more files in changeset.
Improve handling of startup failures in 'single request' and 'multi request' worker processes, so that the failure is propagated to the client rather than logged.

  1. … 7 more files in changeset.
Improve handling of startup failures in 'single request' and 'multi request' worker processes, so that the failure is propagated to the client rather than logged.

  1. … 7 more files in changeset.
Improve handling of startup failures in 'single request' and 'multi request' worker processes, so that the failure is propagated to the client rather than logged.

  1. … 7 more files in changeset.
Add `Encoder.encodeChunked()` and `Decode.decodeChunked()` and `skipChunked()` to allow a potentially large stream of bytes to be encoded and decoded or skipped.

  1. … 2 more files in changeset.
Add `Encoder.encodeChunked()` and `Decode.decodeChunked()` and `skipChunked()` to allow a potentially large stream of bytes to be encoded and decoded or skipped.

  1. … 1 more file in changeset.
Add `Encoder.encodeChunked()` and `Decode.decodeChunked()` and `skipChunked()` to allow a potentially large stream of bytes to be encoded and decoded or skipped.

  1. … 2 more files in changeset.
Add `Encoder.encodeChunked()` and `Decode.decodeChunked()` and `skipChunked()` to allow a potentially large stream of bytes to be encoded and decoded or skipped.

  1. … 2 more files in changeset.
Add `Encoder.encodeChunked()` and `Decode.decodeChunked()` and `skipChunked()` to allow a potentially large stream of bytes to be encoded and decoded or skipped.

  1. … 2 more files in changeset.