@temporalio/common 1.0.1 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/failure.d.ts +60 -25
- package/lib/failure.js +45 -31
- package/lib/failure.js.map +1 -1
- package/package.json +5 -5
- package/src/failure.ts +85 -38
package/lib/failure.d.ts
CHANGED
|
@@ -23,14 +23,9 @@ export declare type WorkflowExecution = temporal.api.common.v1.IWorkflowExecutio
|
|
|
23
23
|
/**
|
|
24
24
|
* Represents failures that can cross Workflow and Activity boundaries.
|
|
25
25
|
*
|
|
26
|
-
*
|
|
26
|
+
* **Never extend this class or any of its children.**
|
|
27
27
|
*
|
|
28
|
-
*
|
|
29
|
-
* only. Throw an instance {@link ApplicationFailure} to pass application specific errors between
|
|
30
|
-
* Workflows and Activities.
|
|
31
|
-
*
|
|
32
|
-
* Any unhandled exception thrown by an Activity or Workflow will be converted to an instance of
|
|
33
|
-
* {@link ApplicationFailure}.
|
|
28
|
+
* The only child class you should ever throw from your code is {@link ApplicationFailure}.
|
|
34
29
|
*/
|
|
35
30
|
export declare class TemporalFailure extends Error {
|
|
36
31
|
readonly cause?: Error | undefined;
|
|
@@ -41,7 +36,7 @@ export declare class TemporalFailure extends Error {
|
|
|
41
36
|
* Only present if this error was generated from an external operation.
|
|
42
37
|
*/
|
|
43
38
|
failure?: ProtoFailure;
|
|
44
|
-
constructor(message
|
|
39
|
+
constructor(message?: string | undefined | null, cause?: Error | undefined);
|
|
45
40
|
}
|
|
46
41
|
/** Exceptions originated at the Temporal service. */
|
|
47
42
|
export declare class ServerFailure extends TemporalFailure {
|
|
@@ -59,26 +54,40 @@ export declare class ServerFailure extends TemporalFailure {
|
|
|
59
54
|
* `ApplicationFailure`, the Workflow Execution will fail.
|
|
60
55
|
*
|
|
61
56
|
* In Activities, you can either throw an `ApplicationFailure` or another `Error` to fail the Activity Task. In the
|
|
62
|
-
* latter case, the `Error` will be converted to an `ApplicationFailure`.
|
|
63
|
-
* {@link https://docs.temporal.io/concepts/what-is-an-activity-execution | Activity Execution} fails, the
|
|
64
|
-
* `ApplicationFailure` from the last Activity Task will be the `cause` of the {@link ActivityFailure} thrown in the
|
|
65
|
-
* Workflow.
|
|
66
|
-
*
|
|
67
|
-
* The conversion of an error that doesn't extend {@link TemporalFailure} to an `ApplicationFailure` is done as
|
|
68
|
-
* following:
|
|
57
|
+
* latter case, the `Error` will be converted to an `ApplicationFailure`. The conversion is done as following:
|
|
69
58
|
*
|
|
70
59
|
* - `type` is set to `error.constructor?.name ?? error.name`
|
|
71
60
|
* - `message` is set to `error.message`
|
|
72
61
|
* - `nonRetryable` is set to false
|
|
73
62
|
* - `details` are set to null
|
|
74
63
|
* - stack trace is copied from the original error
|
|
64
|
+
*
|
|
65
|
+
* When an {@link https://docs.temporal.io/concepts/what-is-an-activity-execution | Activity Execution} fails, the
|
|
66
|
+
* `ApplicationFailure` from the last Activity Task will be the `cause` of the {@link ActivityFailure} thrown in the
|
|
67
|
+
* Workflow.
|
|
75
68
|
*/
|
|
76
69
|
export declare class ApplicationFailure extends TemporalFailure {
|
|
77
|
-
readonly type
|
|
78
|
-
readonly nonRetryable
|
|
79
|
-
readonly details?: unknown[] | undefined;
|
|
70
|
+
readonly type?: string | null | undefined;
|
|
71
|
+
readonly nonRetryable?: boolean | null | undefined;
|
|
72
|
+
readonly details?: unknown[] | null | undefined;
|
|
80
73
|
readonly name: string;
|
|
81
|
-
|
|
74
|
+
/**
|
|
75
|
+
* Alternatively, use {@link fromError} or {@link create}.
|
|
76
|
+
*/
|
|
77
|
+
constructor(message?: string | undefined | null, type?: string | null | undefined, nonRetryable?: boolean | null | undefined, details?: unknown[] | null | undefined, cause?: Error);
|
|
78
|
+
/**
|
|
79
|
+
* Create a new `ApplicationFailure` from an Error object.
|
|
80
|
+
*
|
|
81
|
+
* First calls {@link ensureApplicationFailure | `ensureApplicationFailure(error)`} and then overrides any fields
|
|
82
|
+
* provided in `overrides`.
|
|
83
|
+
*/
|
|
84
|
+
static fromError(error: Error | unknown, overrides?: ApplicationFailureOptions): ApplicationFailure;
|
|
85
|
+
/**
|
|
86
|
+
* Create a new `ApplicationFailure`.
|
|
87
|
+
*
|
|
88
|
+
* By default, will be retryable (unless its `type` is included in {@link RetryPolicy.nonRetryableErrorTypes}).
|
|
89
|
+
*/
|
|
90
|
+
static create(options: ApplicationFailureOptions): ApplicationFailure;
|
|
82
91
|
/**
|
|
83
92
|
* Get a new `ApplicationFailure` with the {@link nonRetryable} flag set to false. Note that this error will still
|
|
84
93
|
* not be retried if its `type` is included in {@link RetryPolicy.nonRetryableErrorTypes}.
|
|
@@ -87,7 +96,7 @@ export declare class ApplicationFailure extends TemporalFailure {
|
|
|
87
96
|
* @param type Optional error type (used by {@link RetryPolicy.nonRetryableErrorTypes})
|
|
88
97
|
* @param details Optional details about the failure. Serialized by the Worker's {@link PayloadConverter}.
|
|
89
98
|
*/
|
|
90
|
-
static retryable(message
|
|
99
|
+
static retryable(message?: string | null, type?: string | null, ...details: unknown[]): ApplicationFailure;
|
|
91
100
|
/**
|
|
92
101
|
* Get a new `ApplicationFailure` with the {@link nonRetryable} flag set to true.
|
|
93
102
|
*
|
|
@@ -98,7 +107,31 @@ export declare class ApplicationFailure extends TemporalFailure {
|
|
|
98
107
|
* @param type Optional error type
|
|
99
108
|
* @param details Optional details about the failure. Serialized by the Worker's {@link PayloadConverter}.
|
|
100
109
|
*/
|
|
101
|
-
static nonRetryable(message
|
|
110
|
+
static nonRetryable(message?: string | null, type?: string | null, ...details: unknown[]): ApplicationFailure;
|
|
111
|
+
}
|
|
112
|
+
export interface ApplicationFailureOptions {
|
|
113
|
+
/**
|
|
114
|
+
* Error message
|
|
115
|
+
*/
|
|
116
|
+
message?: string;
|
|
117
|
+
/**
|
|
118
|
+
* Error type (used by {@link RetryPolicy.nonRetryableErrorTypes})
|
|
119
|
+
*/
|
|
120
|
+
type?: string;
|
|
121
|
+
/**
|
|
122
|
+
* Whether the current Activity or Workflow can be retried
|
|
123
|
+
*
|
|
124
|
+
* @default false
|
|
125
|
+
*/
|
|
126
|
+
nonRetryable?: boolean;
|
|
127
|
+
/**
|
|
128
|
+
* Details about the failure. Serialized by the Worker's {@link PayloadConverter}.
|
|
129
|
+
*/
|
|
130
|
+
details?: unknown[];
|
|
131
|
+
/**
|
|
132
|
+
* Cause of the failure
|
|
133
|
+
*/
|
|
134
|
+
cause?: Error;
|
|
102
135
|
}
|
|
103
136
|
/**
|
|
104
137
|
* This error is thrown when Cancellation has been requested. To allow Cancellation to happen, let it propagate. To
|
|
@@ -169,13 +202,15 @@ export declare function cutoffStackTrace(stack?: string): string;
|
|
|
169
202
|
*/
|
|
170
203
|
export declare function errorToFailure(err: unknown, payloadConverter: PayloadConverter): ProtoFailure;
|
|
171
204
|
/**
|
|
172
|
-
* If `
|
|
205
|
+
* If `error` is already an `ApplicationFailure`, returns `error`.
|
|
173
206
|
*
|
|
174
|
-
*
|
|
207
|
+
* Otherwise, converts `error` into an `ApplicationFailure` with:
|
|
175
208
|
*
|
|
176
|
-
*
|
|
209
|
+
* - `message`: `error.message` or `String(error)`
|
|
210
|
+
* - `type`: `error.constructor.name` or `error.name`
|
|
211
|
+
* - `stack`: `error.stack` or `''`
|
|
177
212
|
*/
|
|
178
|
-
export declare function ensureApplicationFailure(
|
|
213
|
+
export declare function ensureApplicationFailure(error: unknown): ApplicationFailure;
|
|
179
214
|
/**
|
|
180
215
|
* If `err` is an Error it is turned into an `ApplicationFailure`.
|
|
181
216
|
*
|
package/lib/failure.js
CHANGED
|
@@ -15,6 +15,7 @@ var TimeoutType;
|
|
|
15
15
|
TimeoutType[TimeoutType["TIMEOUT_TYPE_HEARTBEAT"] = 4] = "TIMEOUT_TYPE_HEARTBEAT";
|
|
16
16
|
})(TimeoutType = exports.TimeoutType || (exports.TimeoutType = {}));
|
|
17
17
|
(0, internal_workflow_common_1.checkExtends)();
|
|
18
|
+
(0, internal_workflow_common_1.checkExtends)();
|
|
18
19
|
// Avoid importing the proto implementation to reduce workflow bundle size
|
|
19
20
|
// Copied from temporal.api.enums.v1.RetryState
|
|
20
21
|
var RetryState;
|
|
@@ -29,17 +30,13 @@ var RetryState;
|
|
|
29
30
|
RetryState[RetryState["RETRY_STATE_CANCEL_REQUESTED"] = 7] = "RETRY_STATE_CANCEL_REQUESTED";
|
|
30
31
|
})(RetryState = exports.RetryState || (exports.RetryState = {}));
|
|
31
32
|
(0, internal_workflow_common_1.checkExtends)();
|
|
33
|
+
(0, internal_workflow_common_1.checkExtends)();
|
|
32
34
|
/**
|
|
33
35
|
* Represents failures that can cross Workflow and Activity boundaries.
|
|
34
36
|
*
|
|
35
|
-
*
|
|
37
|
+
* **Never extend this class or any of its children.**
|
|
36
38
|
*
|
|
37
|
-
*
|
|
38
|
-
* only. Throw an instance {@link ApplicationFailure} to pass application specific errors between
|
|
39
|
-
* Workflows and Activities.
|
|
40
|
-
*
|
|
41
|
-
* Any unhandled exception thrown by an Activity or Workflow will be converted to an instance of
|
|
42
|
-
* {@link ApplicationFailure}.
|
|
39
|
+
* The only child class you should ever throw from your code is {@link ApplicationFailure}.
|
|
43
40
|
*/
|
|
44
41
|
class TemporalFailure extends Error {
|
|
45
42
|
constructor(message, cause) {
|
|
@@ -68,21 +65,22 @@ exports.ServerFailure = ServerFailure;
|
|
|
68
65
|
* `ApplicationFailure`, the Workflow Execution will fail.
|
|
69
66
|
*
|
|
70
67
|
* In Activities, you can either throw an `ApplicationFailure` or another `Error` to fail the Activity Task. In the
|
|
71
|
-
* latter case, the `Error` will be converted to an `ApplicationFailure`.
|
|
72
|
-
* {@link https://docs.temporal.io/concepts/what-is-an-activity-execution | Activity Execution} fails, the
|
|
73
|
-
* `ApplicationFailure` from the last Activity Task will be the `cause` of the {@link ActivityFailure} thrown in the
|
|
74
|
-
* Workflow.
|
|
75
|
-
*
|
|
76
|
-
* The conversion of an error that doesn't extend {@link TemporalFailure} to an `ApplicationFailure` is done as
|
|
77
|
-
* following:
|
|
68
|
+
* latter case, the `Error` will be converted to an `ApplicationFailure`. The conversion is done as following:
|
|
78
69
|
*
|
|
79
70
|
* - `type` is set to `error.constructor?.name ?? error.name`
|
|
80
71
|
* - `message` is set to `error.message`
|
|
81
72
|
* - `nonRetryable` is set to false
|
|
82
73
|
* - `details` are set to null
|
|
83
74
|
* - stack trace is copied from the original error
|
|
75
|
+
*
|
|
76
|
+
* When an {@link https://docs.temporal.io/concepts/what-is-an-activity-execution | Activity Execution} fails, the
|
|
77
|
+
* `ApplicationFailure` from the last Activity Task will be the `cause` of the {@link ActivityFailure} thrown in the
|
|
78
|
+
* Workflow.
|
|
84
79
|
*/
|
|
85
80
|
class ApplicationFailure extends TemporalFailure {
|
|
81
|
+
/**
|
|
82
|
+
* Alternatively, use {@link fromError} or {@link create}.
|
|
83
|
+
*/
|
|
86
84
|
constructor(message, type, nonRetryable, details, cause) {
|
|
87
85
|
super(message, cause);
|
|
88
86
|
this.type = type;
|
|
@@ -90,6 +88,26 @@ class ApplicationFailure extends TemporalFailure {
|
|
|
90
88
|
this.details = details;
|
|
91
89
|
this.name = 'ApplicationFailure';
|
|
92
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Create a new `ApplicationFailure` from an Error object.
|
|
93
|
+
*
|
|
94
|
+
* First calls {@link ensureApplicationFailure | `ensureApplicationFailure(error)`} and then overrides any fields
|
|
95
|
+
* provided in `overrides`.
|
|
96
|
+
*/
|
|
97
|
+
static fromError(error, overrides) {
|
|
98
|
+
const failure = ensureApplicationFailure(error);
|
|
99
|
+
Object.assign(failure, overrides);
|
|
100
|
+
return failure;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Create a new `ApplicationFailure`.
|
|
104
|
+
*
|
|
105
|
+
* By default, will be retryable (unless its `type` is included in {@link RetryPolicy.nonRetryableErrorTypes}).
|
|
106
|
+
*/
|
|
107
|
+
static create(options) {
|
|
108
|
+
const { message, type, nonRetryable = false, details, cause } = options;
|
|
109
|
+
return new this(message, type, nonRetryable, details, cause);
|
|
110
|
+
}
|
|
93
111
|
/**
|
|
94
112
|
* Get a new `ApplicationFailure` with the {@link nonRetryable} flag set to false. Note that this error will still
|
|
95
113
|
* not be retried if its `type` is included in {@link RetryPolicy.nonRetryableErrorTypes}.
|
|
@@ -326,27 +344,23 @@ function errorToFailure(err, payloadConverter) {
|
|
|
326
344
|
}
|
|
327
345
|
exports.errorToFailure = errorToFailure;
|
|
328
346
|
/**
|
|
329
|
-
* If `
|
|
347
|
+
* If `error` is already an `ApplicationFailure`, returns `error`.
|
|
330
348
|
*
|
|
331
|
-
*
|
|
349
|
+
* Otherwise, converts `error` into an `ApplicationFailure` with:
|
|
332
350
|
*
|
|
333
|
-
*
|
|
351
|
+
* - `message`: `error.message` or `String(error)`
|
|
352
|
+
* - `type`: `error.constructor.name` or `error.name`
|
|
353
|
+
* - `stack`: `error.stack` or `''`
|
|
334
354
|
*/
|
|
335
|
-
function ensureApplicationFailure(
|
|
336
|
-
if (
|
|
337
|
-
return
|
|
338
|
-
}
|
|
339
|
-
if (err instanceof Error) {
|
|
340
|
-
const name = err.constructor?.name ?? err.name;
|
|
341
|
-
const failure = new ApplicationFailure(err.message, name, false);
|
|
342
|
-
failure.stack = err.stack;
|
|
343
|
-
return failure;
|
|
344
|
-
}
|
|
345
|
-
else {
|
|
346
|
-
const failure = new ApplicationFailure(String(err), undefined, false);
|
|
347
|
-
failure.stack = '';
|
|
348
|
-
return failure;
|
|
355
|
+
function ensureApplicationFailure(error) {
|
|
356
|
+
if (error instanceof ApplicationFailure) {
|
|
357
|
+
return error;
|
|
349
358
|
}
|
|
359
|
+
const message = ((0, internal_workflow_common_1.isRecord)(error) && String(error.message)) || String(error);
|
|
360
|
+
const type = ((0, internal_workflow_common_1.isRecord)(error) && (error.constructor?.name ?? error.name)) || undefined;
|
|
361
|
+
const failure = ApplicationFailure.create({ message, type, nonRetryable: false });
|
|
362
|
+
failure.stack = ((0, internal_workflow_common_1.isRecord)(error) && String(error.stack)) || '';
|
|
363
|
+
return failure;
|
|
350
364
|
}
|
|
351
365
|
exports.ensureApplicationFailure = ensureApplicationFailure;
|
|
352
366
|
/**
|
package/lib/failure.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"failure.js","sourceRoot":"","sources":["../src/failure.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"failure.js","sourceRoot":"","sources":["../src/failure.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@temporalio/common",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "Common library for code that's used across the Client, Worker, and/or Workflow",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"@opentelemetry/api": "^1.0.3",
|
|
16
|
-
"@temporalio/internal-workflow-common": "^1.0
|
|
17
|
-
"@temporalio/proto": "^1.0
|
|
18
|
-
"proto3-json-serializer": "^1.0.
|
|
16
|
+
"@temporalio/internal-workflow-common": "^1.3.0",
|
|
17
|
+
"@temporalio/proto": "^1.3.0",
|
|
18
|
+
"proto3-json-serializer": "^1.0.3",
|
|
19
19
|
"protobufjs": "^7.0.0"
|
|
20
20
|
},
|
|
21
21
|
"bugs": {
|
|
@@ -29,5 +29,5 @@
|
|
|
29
29
|
"src",
|
|
30
30
|
"lib"
|
|
31
31
|
],
|
|
32
|
-
"gitHead": "
|
|
32
|
+
"gitHead": "966d51d3545a5e84102190f5b762160b9dfe99c2"
|
|
33
33
|
}
|
package/src/failure.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { checkExtends, hasOwnProperties, isRecord } from '@temporalio/internal-workflow-common';
|
|
2
2
|
import type { temporal } from '@temporalio/proto';
|
|
3
|
-
import {
|
|
3
|
+
import { arrayFromPayloads, fromPayloadsAtIndex, PayloadConverter, toPayloads } from './converter/payload-converter';
|
|
4
4
|
|
|
5
5
|
export const FAILURE_SOURCE = 'TypeScriptSDK';
|
|
6
6
|
export type ProtoFailure = temporal.api.failure.v1.IFailure;
|
|
@@ -16,6 +16,7 @@ export enum TimeoutType {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
checkExtends<temporal.api.enums.v1.TimeoutType, TimeoutType>();
|
|
19
|
+
checkExtends<TimeoutType, temporal.api.enums.v1.TimeoutType>();
|
|
19
20
|
|
|
20
21
|
// Avoid importing the proto implementation to reduce workflow bundle size
|
|
21
22
|
// Copied from temporal.api.enums.v1.RetryState
|
|
@@ -31,20 +32,16 @@ export enum RetryState {
|
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
checkExtends<temporal.api.enums.v1.RetryState, RetryState>();
|
|
35
|
+
checkExtends<RetryState, temporal.api.enums.v1.RetryState>();
|
|
34
36
|
|
|
35
37
|
export type WorkflowExecution = temporal.api.common.v1.IWorkflowExecution;
|
|
36
38
|
|
|
37
39
|
/**
|
|
38
40
|
* Represents failures that can cross Workflow and Activity boundaries.
|
|
39
41
|
*
|
|
40
|
-
*
|
|
42
|
+
* **Never extend this class or any of its children.**
|
|
41
43
|
*
|
|
42
|
-
*
|
|
43
|
-
* only. Throw an instance {@link ApplicationFailure} to pass application specific errors between
|
|
44
|
-
* Workflows and Activities.
|
|
45
|
-
*
|
|
46
|
-
* Any unhandled exception thrown by an Activity or Workflow will be converted to an instance of
|
|
47
|
-
* {@link ApplicationFailure}.
|
|
44
|
+
* The only child class you should ever throw from your code is {@link ApplicationFailure}.
|
|
48
45
|
*/
|
|
49
46
|
export class TemporalFailure extends Error {
|
|
50
47
|
public readonly name: string = 'TemporalFailure';
|
|
@@ -55,7 +52,7 @@ export class TemporalFailure extends Error {
|
|
|
55
52
|
*/
|
|
56
53
|
public failure?: ProtoFailure;
|
|
57
54
|
|
|
58
|
-
constructor(message
|
|
55
|
+
constructor(message?: string | undefined | null, public readonly cause?: Error) {
|
|
59
56
|
super(message ?? undefined);
|
|
60
57
|
}
|
|
61
58
|
}
|
|
@@ -79,33 +76,56 @@ export class ServerFailure extends TemporalFailure {
|
|
|
79
76
|
* `ApplicationFailure`, the Workflow Execution will fail.
|
|
80
77
|
*
|
|
81
78
|
* In Activities, you can either throw an `ApplicationFailure` or another `Error` to fail the Activity Task. In the
|
|
82
|
-
* latter case, the `Error` will be converted to an `ApplicationFailure`.
|
|
83
|
-
* {@link https://docs.temporal.io/concepts/what-is-an-activity-execution | Activity Execution} fails, the
|
|
84
|
-
* `ApplicationFailure` from the last Activity Task will be the `cause` of the {@link ActivityFailure} thrown in the
|
|
85
|
-
* Workflow.
|
|
86
|
-
*
|
|
87
|
-
* The conversion of an error that doesn't extend {@link TemporalFailure} to an `ApplicationFailure` is done as
|
|
88
|
-
* following:
|
|
79
|
+
* latter case, the `Error` will be converted to an `ApplicationFailure`. The conversion is done as following:
|
|
89
80
|
*
|
|
90
81
|
* - `type` is set to `error.constructor?.name ?? error.name`
|
|
91
82
|
* - `message` is set to `error.message`
|
|
92
83
|
* - `nonRetryable` is set to false
|
|
93
84
|
* - `details` are set to null
|
|
94
85
|
* - stack trace is copied from the original error
|
|
86
|
+
*
|
|
87
|
+
* When an {@link https://docs.temporal.io/concepts/what-is-an-activity-execution | Activity Execution} fails, the
|
|
88
|
+
* `ApplicationFailure` from the last Activity Task will be the `cause` of the {@link ActivityFailure} thrown in the
|
|
89
|
+
* Workflow.
|
|
95
90
|
*/
|
|
96
91
|
export class ApplicationFailure extends TemporalFailure {
|
|
97
92
|
public readonly name: string = 'ApplicationFailure';
|
|
98
93
|
|
|
94
|
+
/**
|
|
95
|
+
* Alternatively, use {@link fromError} or {@link create}.
|
|
96
|
+
*/
|
|
99
97
|
constructor(
|
|
100
|
-
message
|
|
101
|
-
public readonly type
|
|
102
|
-
public readonly nonRetryable
|
|
103
|
-
public readonly details?: unknown[],
|
|
98
|
+
message?: string | undefined | null,
|
|
99
|
+
public readonly type?: string | undefined | null,
|
|
100
|
+
public readonly nonRetryable?: boolean | undefined | null,
|
|
101
|
+
public readonly details?: unknown[] | undefined | null,
|
|
104
102
|
cause?: Error
|
|
105
103
|
) {
|
|
106
104
|
super(message, cause);
|
|
107
105
|
}
|
|
108
106
|
|
|
107
|
+
/**
|
|
108
|
+
* Create a new `ApplicationFailure` from an Error object.
|
|
109
|
+
*
|
|
110
|
+
* First calls {@link ensureApplicationFailure | `ensureApplicationFailure(error)`} and then overrides any fields
|
|
111
|
+
* provided in `overrides`.
|
|
112
|
+
*/
|
|
113
|
+
public static fromError(error: Error | unknown, overrides?: ApplicationFailureOptions): ApplicationFailure {
|
|
114
|
+
const failure = ensureApplicationFailure(error);
|
|
115
|
+
Object.assign(failure, overrides);
|
|
116
|
+
return failure;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Create a new `ApplicationFailure`.
|
|
121
|
+
*
|
|
122
|
+
* By default, will be retryable (unless its `type` is included in {@link RetryPolicy.nonRetryableErrorTypes}).
|
|
123
|
+
*/
|
|
124
|
+
public static create(options: ApplicationFailureOptions): ApplicationFailure {
|
|
125
|
+
const { message, type, nonRetryable = false, details, cause } = options;
|
|
126
|
+
return new this(message, type, nonRetryable, details, cause);
|
|
127
|
+
}
|
|
128
|
+
|
|
109
129
|
/**
|
|
110
130
|
* Get a new `ApplicationFailure` with the {@link nonRetryable} flag set to false. Note that this error will still
|
|
111
131
|
* not be retried if its `type` is included in {@link RetryPolicy.nonRetryableErrorTypes}.
|
|
@@ -114,7 +134,7 @@ export class ApplicationFailure extends TemporalFailure {
|
|
|
114
134
|
* @param type Optional error type (used by {@link RetryPolicy.nonRetryableErrorTypes})
|
|
115
135
|
* @param details Optional details about the failure. Serialized by the Worker's {@link PayloadConverter}.
|
|
116
136
|
*/
|
|
117
|
-
public static retryable(message
|
|
137
|
+
public static retryable(message?: string | null, type?: string | null, ...details: unknown[]): ApplicationFailure {
|
|
118
138
|
return new this(message, type ?? 'Error', false, details);
|
|
119
139
|
}
|
|
120
140
|
|
|
@@ -128,11 +148,40 @@ export class ApplicationFailure extends TemporalFailure {
|
|
|
128
148
|
* @param type Optional error type
|
|
129
149
|
* @param details Optional details about the failure. Serialized by the Worker's {@link PayloadConverter}.
|
|
130
150
|
*/
|
|
131
|
-
public static nonRetryable(message
|
|
151
|
+
public static nonRetryable(message?: string | null, type?: string | null, ...details: unknown[]): ApplicationFailure {
|
|
132
152
|
return new this(message, type ?? 'Error', true, details);
|
|
133
153
|
}
|
|
134
154
|
}
|
|
135
155
|
|
|
156
|
+
export interface ApplicationFailureOptions {
|
|
157
|
+
/**
|
|
158
|
+
* Error message
|
|
159
|
+
*/
|
|
160
|
+
message?: string;
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Error type (used by {@link RetryPolicy.nonRetryableErrorTypes})
|
|
164
|
+
*/
|
|
165
|
+
type?: string;
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* Whether the current Activity or Workflow can be retried
|
|
169
|
+
*
|
|
170
|
+
* @default false
|
|
171
|
+
*/
|
|
172
|
+
nonRetryable?: boolean;
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Details about the failure. Serialized by the Worker's {@link PayloadConverter}.
|
|
176
|
+
*/
|
|
177
|
+
details?: unknown[];
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Cause of the failure
|
|
181
|
+
*/
|
|
182
|
+
cause?: Error;
|
|
183
|
+
}
|
|
184
|
+
|
|
136
185
|
/**
|
|
137
186
|
* This error is thrown when Cancellation has been requested. To allow Cancellation to happen, let it propagate. To
|
|
138
187
|
* ignore Cancellation, catch it and continue executing. Note that Cancellation can only be requested a single time, so
|
|
@@ -362,26 +411,24 @@ export function errorToFailure(err: unknown, payloadConverter: PayloadConverter)
|
|
|
362
411
|
}
|
|
363
412
|
|
|
364
413
|
/**
|
|
365
|
-
* If `
|
|
414
|
+
* If `error` is already an `ApplicationFailure`, returns `error`.
|
|
366
415
|
*
|
|
367
|
-
*
|
|
416
|
+
* Otherwise, converts `error` into an `ApplicationFailure` with:
|
|
368
417
|
*
|
|
369
|
-
*
|
|
418
|
+
* - `message`: `error.message` or `String(error)`
|
|
419
|
+
* - `type`: `error.constructor.name` or `error.name`
|
|
420
|
+
* - `stack`: `error.stack` or `''`
|
|
370
421
|
*/
|
|
371
|
-
export function ensureApplicationFailure(
|
|
372
|
-
if (
|
|
373
|
-
return
|
|
374
|
-
}
|
|
375
|
-
if (err instanceof Error) {
|
|
376
|
-
const name = err.constructor?.name ?? err.name;
|
|
377
|
-
const failure = new ApplicationFailure(err.message, name, false);
|
|
378
|
-
failure.stack = err.stack;
|
|
379
|
-
return failure;
|
|
380
|
-
} else {
|
|
381
|
-
const failure = new ApplicationFailure(String(err), undefined, false);
|
|
382
|
-
failure.stack = '';
|
|
383
|
-
return failure;
|
|
422
|
+
export function ensureApplicationFailure(error: unknown): ApplicationFailure {
|
|
423
|
+
if (error instanceof ApplicationFailure) {
|
|
424
|
+
return error;
|
|
384
425
|
}
|
|
426
|
+
|
|
427
|
+
const message = (isRecord(error) && String(error.message)) || String(error);
|
|
428
|
+
const type = (isRecord(error) && (error.constructor?.name ?? error.name)) || undefined;
|
|
429
|
+
const failure = ApplicationFailure.create({ message, type, nonRetryable: false });
|
|
430
|
+
failure.stack = (isRecord(error) && String(error.stack)) || '';
|
|
431
|
+
return failure;
|
|
385
432
|
}
|
|
386
433
|
|
|
387
434
|
/**
|