@temporalio/core-bridge 1.5.2 → 1.7.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/Cargo.lock +304 -112
- package/lib/index.d.ts +8 -6
- package/lib/index.js.map +1 -1
- package/package.json +9 -4
- package/releases/aarch64-apple-darwin/index.node +0 -0
- package/releases/aarch64-unknown-linux-gnu/index.node +0 -0
- package/releases/x86_64-apple-darwin/index.node +0 -0
- package/releases/x86_64-pc-windows-msvc/index.node +0 -0
- package/releases/x86_64-unknown-linux-gnu/index.node +0 -0
- package/sdk-core/.buildkite/docker/Dockerfile +2 -2
- package/sdk-core/.buildkite/docker/docker-compose.yaml +1 -1
- package/sdk-core/.buildkite/pipeline.yml +2 -4
- package/sdk-core/.cargo/config.toml +5 -2
- package/sdk-core/.github/workflows/heavy.yml +29 -0
- package/sdk-core/Cargo.toml +1 -1
- package/sdk-core/README.md +20 -10
- package/sdk-core/client/src/lib.rs +215 -39
- package/sdk-core/client/src/metrics.rs +17 -8
- package/sdk-core/client/src/raw.rs +4 -4
- package/sdk-core/client/src/retry.rs +32 -20
- package/sdk-core/core/Cargo.toml +25 -12
- package/sdk-core/core/src/abstractions/take_cell.rs +28 -0
- package/sdk-core/core/src/abstractions.rs +204 -14
- package/sdk-core/core/src/core_tests/activity_tasks.rs +143 -50
- package/sdk-core/core/src/core_tests/child_workflows.rs +6 -5
- package/sdk-core/core/src/core_tests/determinism.rs +165 -2
- package/sdk-core/core/src/core_tests/local_activities.rs +431 -43
- package/sdk-core/core/src/core_tests/queries.rs +34 -16
- package/sdk-core/core/src/core_tests/workers.rs +8 -5
- package/sdk-core/core/src/core_tests/workflow_tasks.rs +588 -55
- package/sdk-core/core/src/ephemeral_server/mod.rs +113 -12
- package/sdk-core/core/src/internal_flags.rs +155 -0
- package/sdk-core/core/src/lib.rs +16 -9
- package/sdk-core/core/src/protosext/mod.rs +1 -1
- package/sdk-core/core/src/replay/mod.rs +16 -27
- package/sdk-core/core/src/telemetry/log_export.rs +1 -1
- package/sdk-core/core/src/telemetry/metrics.rs +69 -35
- package/sdk-core/core/src/telemetry/mod.rs +60 -21
- package/sdk-core/core/src/telemetry/prometheus_server.rs +19 -13
- package/sdk-core/core/src/test_help/mod.rs +73 -14
- package/sdk-core/core/src/worker/activities/activity_heartbeat_manager.rs +119 -160
- package/sdk-core/core/src/worker/activities/activity_task_poller_stream.rs +89 -0
- package/sdk-core/core/src/worker/activities/local_activities.rs +379 -129
- package/sdk-core/core/src/worker/activities.rs +350 -175
- package/sdk-core/core/src/worker/client/mocks.rs +22 -2
- package/sdk-core/core/src/worker/client.rs +18 -2
- package/sdk-core/core/src/worker/mod.rs +183 -64
- package/sdk-core/core/src/worker/workflow/bridge.rs +1 -3
- package/sdk-core/core/src/worker/workflow/driven_workflow.rs +3 -5
- package/sdk-core/core/src/worker/workflow/history_update.rs +916 -277
- package/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +216 -183
- package/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +9 -12
- package/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +7 -9
- package/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +160 -87
- package/sdk-core/core/src/worker/workflow/machines/complete_workflow_state_machine.rs +13 -14
- package/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +7 -9
- package/sdk-core/core/src/worker/workflow/machines/fail_workflow_state_machine.rs +14 -17
- package/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +242 -110
- package/sdk-core/core/src/worker/workflow/machines/mod.rs +27 -19
- package/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs +9 -11
- package/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +321 -206
- package/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +13 -18
- package/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +20 -29
- package/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +2 -2
- package/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +257 -51
- package/sdk-core/core/src/worker/workflow/machines/workflow_machines/local_acts.rs +6 -17
- package/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +310 -150
- package/sdk-core/core/src/worker/workflow/machines/workflow_task_state_machine.rs +17 -20
- package/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +31 -15
- package/sdk-core/core/src/worker/workflow/managed_run.rs +1052 -380
- package/sdk-core/core/src/worker/workflow/mod.rs +598 -390
- package/sdk-core/core/src/worker/workflow/run_cache.rs +40 -57
- package/sdk-core/core/src/worker/workflow/wft_extraction.rs +137 -0
- package/sdk-core/core/src/worker/workflow/wft_poller.rs +1 -4
- package/sdk-core/core/src/worker/workflow/workflow_stream/saved_wf_inputs.rs +117 -0
- package/sdk-core/core/src/worker/workflow/workflow_stream/tonic_status_serde.rs +24 -0
- package/sdk-core/core/src/worker/workflow/workflow_stream.rs +469 -718
- package/sdk-core/core-api/Cargo.toml +2 -1
- package/sdk-core/core-api/src/errors.rs +1 -34
- package/sdk-core/core-api/src/lib.rs +19 -9
- package/sdk-core/core-api/src/telemetry.rs +4 -6
- package/sdk-core/core-api/src/worker.rs +19 -1
- package/sdk-core/etc/deps.svg +115 -140
- package/sdk-core/etc/regen-depgraph.sh +5 -0
- package/sdk-core/fsm/rustfsm_procmacro/src/lib.rs +86 -61
- package/sdk-core/fsm/rustfsm_trait/src/lib.rs +29 -71
- package/sdk-core/histories/ends_empty_wft_complete.bin +0 -0
- package/sdk-core/histories/evict_while_la_running_no_interference-16_history.bin +0 -0
- package/sdk-core/histories/old_change_marker_format.bin +0 -0
- package/sdk-core/protos/api_upstream/.github/CODEOWNERS +2 -1
- package/sdk-core/protos/api_upstream/Makefile +6 -6
- package/sdk-core/protos/api_upstream/build/go.mod +7 -0
- package/sdk-core/protos/api_upstream/build/go.sum +5 -0
- package/sdk-core/protos/api_upstream/build/tools.go +29 -0
- package/sdk-core/protos/api_upstream/go.mod +6 -0
- package/sdk-core/protos/api_upstream/temporal/api/batch/v1/message.proto +9 -2
- package/sdk-core/protos/api_upstream/temporal/api/command/v1/message.proto +7 -26
- package/sdk-core/protos/api_upstream/temporal/api/common/v1/message.proto +13 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/batch_operation.proto +3 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/command_type.proto +3 -7
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/common.proto +3 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/event_type.proto +8 -8
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/failed_cause.proto +25 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/namespace.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/query.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/reset.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/schedule.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/task_queue.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/update.proto +24 -19
- package/sdk-core/protos/api_upstream/temporal/api/enums/v1/workflow.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/errordetails/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/failure/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/filter/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/history/v1/message.proto +49 -26
- package/sdk-core/protos/api_upstream/temporal/api/namespace/v1/message.proto +4 -2
- package/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto +5 -2
- package/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/service.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/protocol/v1/message.proto +57 -0
- package/sdk-core/protos/api_upstream/temporal/api/query/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/replication/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/schedule/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/sdk/v1/task_complete_metadata.proto +63 -0
- package/sdk-core/protos/api_upstream/temporal/api/taskqueue/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/update/v1/message.proto +71 -6
- package/sdk-core/protos/api_upstream/temporal/api/version/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/workflow/v1/message.proto +2 -2
- package/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto +64 -28
- package/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/service.proto +4 -4
- package/sdk-core/protos/local/temporal/sdk/core/activity_result/activity_result.proto +7 -8
- package/sdk-core/protos/local/temporal/sdk/core/activity_task/activity_task.proto +10 -7
- package/sdk-core/protos/local/temporal/sdk/core/child_workflow/child_workflow.proto +19 -30
- package/sdk-core/protos/local/temporal/sdk/core/common/common.proto +1 -0
- package/sdk-core/protos/local/temporal/sdk/core/core_interface.proto +1 -0
- package/sdk-core/protos/local/temporal/sdk/core/external_data/external_data.proto +8 -0
- package/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +67 -60
- package/sdk-core/protos/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +85 -84
- package/sdk-core/protos/local/temporal/sdk/core/workflow_completion/workflow_completion.proto +9 -3
- package/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/request_response.proto +2 -2
- package/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/service.proto +2 -2
- package/sdk-core/sdk/Cargo.toml +5 -4
- package/sdk-core/sdk/src/lib.rs +108 -26
- package/sdk-core/sdk/src/workflow_context/options.rs +7 -1
- package/sdk-core/sdk/src/workflow_context.rs +24 -17
- package/sdk-core/sdk/src/workflow_future.rs +16 -15
- package/sdk-core/sdk-core-protos/Cargo.toml +5 -2
- package/sdk-core/sdk-core-protos/build.rs +36 -2
- package/sdk-core/sdk-core-protos/src/history_builder.rs +138 -106
- package/sdk-core/sdk-core-protos/src/history_info.rs +10 -1
- package/sdk-core/sdk-core-protos/src/lib.rs +272 -87
- package/sdk-core/sdk-core-protos/src/task_token.rs +12 -2
- package/sdk-core/test-utils/Cargo.toml +3 -1
- package/sdk-core/test-utils/src/canned_histories.rs +106 -296
- package/sdk-core/test-utils/src/histfetch.rs +1 -1
- package/sdk-core/test-utils/src/lib.rs +82 -23
- package/sdk-core/test-utils/src/wf_input_saver.rs +50 -0
- package/sdk-core/test-utils/src/workflows.rs +29 -0
- package/sdk-core/tests/fuzzy_workflow.rs +130 -0
- package/sdk-core/tests/{load_tests.rs → heavy_tests.rs} +125 -51
- package/sdk-core/tests/integ_tests/ephemeral_server_tests.rs +25 -3
- package/sdk-core/tests/integ_tests/heartbeat_tests.rs +10 -5
- package/sdk-core/tests/integ_tests/metrics_tests.rs +218 -16
- package/sdk-core/tests/integ_tests/polling_tests.rs +4 -47
- package/sdk-core/tests/integ_tests/queries_tests.rs +5 -128
- package/sdk-core/tests/integ_tests/visibility_tests.rs +83 -25
- package/sdk-core/tests/integ_tests/workflow_tests/activities.rs +161 -72
- package/sdk-core/tests/integ_tests/workflow_tests/cancel_external.rs +1 -0
- package/sdk-core/tests/integ_tests/workflow_tests/cancel_wf.rs +6 -13
- package/sdk-core/tests/integ_tests/workflow_tests/child_workflows.rs +80 -3
- package/sdk-core/tests/integ_tests/workflow_tests/continue_as_new.rs +6 -2
- package/sdk-core/tests/integ_tests/workflow_tests/determinism.rs +3 -10
- package/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs +94 -200
- package/sdk-core/tests/integ_tests/workflow_tests/modify_wf_properties.rs +2 -4
- package/sdk-core/tests/integ_tests/workflow_tests/patches.rs +34 -28
- package/sdk-core/tests/integ_tests/workflow_tests/replay.rs +76 -7
- package/sdk-core/tests/integ_tests/workflow_tests/resets.rs +1 -0
- package/sdk-core/tests/integ_tests/workflow_tests/signals.rs +18 -14
- package/sdk-core/tests/integ_tests/workflow_tests/stickyness.rs +6 -20
- package/sdk-core/tests/integ_tests/workflow_tests/timers.rs +10 -21
- package/sdk-core/tests/integ_tests/workflow_tests/upsert_search_attrs.rs +7 -8
- package/sdk-core/tests/integ_tests/workflow_tests.rs +13 -14
- package/sdk-core/tests/main.rs +3 -13
- package/sdk-core/tests/runner.rs +75 -36
- package/sdk-core/tests/wf_input_replay.rs +32 -0
- package/src/conversions.rs +14 -8
- package/src/runtime.rs +9 -8
- package/ts/index.ts +8 -6
- package/sdk-core/bridge-ffi/Cargo.toml +0 -24
- package/sdk-core/bridge-ffi/LICENSE.txt +0 -23
- package/sdk-core/bridge-ffi/build.rs +0 -25
- package/sdk-core/bridge-ffi/include/sdk-core-bridge.h +0 -224
- package/sdk-core/bridge-ffi/src/lib.rs +0 -746
- package/sdk-core/bridge-ffi/src/wrappers.rs +0 -221
- package/sdk-core/protos/local/temporal/sdk/core/bridge/bridge.proto +0 -210
- package/sdk-core/sdk/src/conversions.rs +0 -8
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
syntax = "proto3";
|
|
2
2
|
|
|
3
3
|
package coresdk.external_data;
|
|
4
|
+
option ruby_package = "Temporalio::Bridge::Api::ExternalData";
|
|
4
5
|
|
|
5
6
|
import "google/protobuf/duration.proto";
|
|
6
7
|
import "google/protobuf/timestamp.proto";
|
|
@@ -27,4 +28,11 @@ message LocalActivityMarkerData {
|
|
|
27
28
|
// The time the LA was originally scheduled (wall clock time). This is used to track
|
|
28
29
|
// schedule-to-close timeouts when timer-based backoffs are used
|
|
29
30
|
google.protobuf.Timestamp original_schedule_time = 7;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
message PatchedMarkerData {
|
|
34
|
+
// The patch id
|
|
35
|
+
string id = 1;
|
|
36
|
+
// Whether or not the patch is marked deprecated.
|
|
37
|
+
bool deprecated = 2;
|
|
30
38
|
}
|
package/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto
CHANGED
|
@@ -5,6 +5,7 @@ syntax = "proto3";
|
|
|
5
5
|
* lang SDK applies these activation jobs to drive workflows.
|
|
6
6
|
*/
|
|
7
7
|
package coresdk.workflow_activation;
|
|
8
|
+
option ruby_package = "Temporalio::Bridge::Api::WorkflowActivation";
|
|
8
9
|
|
|
9
10
|
import "google/protobuf/timestamp.proto";
|
|
10
11
|
import "google/protobuf/duration.proto";
|
|
@@ -15,56 +16,60 @@ import "temporal/sdk/core/activity_result/activity_result.proto";
|
|
|
15
16
|
import "temporal/sdk/core/child_workflow/child_workflow.proto";
|
|
16
17
|
import "temporal/sdk/core/common/common.proto";
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
// An instruction to the lang sdk to run some workflow code, whether for the first time or from
|
|
20
|
+
// a cached state.
|
|
20
21
|
message WorkflowActivation {
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
// The id of the currently active run of the workflow. Also used as a cache key. There may
|
|
23
|
+
// only ever be one active workflow task (and hence activation) of a run at one time.
|
|
23
24
|
string run_id = 1;
|
|
24
|
-
|
|
25
|
+
// The current time as understood by the workflow, which is set by workflow task started events
|
|
25
26
|
google.protobuf.Timestamp timestamp = 2;
|
|
26
|
-
|
|
27
|
+
// Whether or not the activation is replaying past events
|
|
27
28
|
bool is_replaying = 3;
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
// Current history length as determined by the event id of the most recently processed event.
|
|
30
|
+
// This ensures that the number is always deterministic
|
|
30
31
|
uint32 history_length = 4;
|
|
31
|
-
|
|
32
|
+
// The things to do upon activating the workflow
|
|
32
33
|
repeated WorkflowActivationJob jobs = 5;
|
|
34
|
+
// Internal flags which are available for use by lang. If `is_replaying` is false, all
|
|
35
|
+
// internal flags may be used. This is not a delta - all previously used flags always
|
|
36
|
+
// appear since this representation is cheap.
|
|
37
|
+
repeated uint32 available_internal_flags = 6;
|
|
33
38
|
}
|
|
34
39
|
|
|
35
40
|
message WorkflowActivationJob {
|
|
36
41
|
oneof variant {
|
|
37
|
-
|
|
42
|
+
// Begin a workflow for the first time
|
|
38
43
|
StartWorkflow start_workflow = 1;
|
|
39
|
-
|
|
44
|
+
// A timer has fired, allowing whatever was waiting on it (if anything) to proceed
|
|
40
45
|
FireTimer fire_timer = 2;
|
|
41
|
-
|
|
46
|
+
// Workflow was reset. The randomness seed must be updated.
|
|
42
47
|
UpdateRandomSeed update_random_seed = 4;
|
|
43
|
-
|
|
48
|
+
// A request to query the workflow was received.
|
|
44
49
|
QueryWorkflow query_workflow = 5;
|
|
45
|
-
|
|
50
|
+
// A request to cancel the workflow was received.
|
|
46
51
|
CancelWorkflow cancel_workflow = 6;
|
|
47
|
-
|
|
52
|
+
// A request to signal the workflow was received.
|
|
48
53
|
SignalWorkflow signal_workflow = 7;
|
|
49
|
-
|
|
54
|
+
// An activity was resolved, result could be completed, failed or cancelled
|
|
50
55
|
ResolveActivity resolve_activity = 8;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
56
|
+
// A patch marker has been detected and lang is being told that change exists. This
|
|
57
|
+
// job is strange in that it is sent pre-emptively to lang without any corresponding
|
|
58
|
+
// command being sent first.
|
|
54
59
|
NotifyHasPatch notify_has_patch = 9;
|
|
55
|
-
|
|
60
|
+
// A child workflow execution has started or failed to start
|
|
56
61
|
ResolveChildWorkflowExecutionStart resolve_child_workflow_execution_start = 10;
|
|
57
|
-
|
|
62
|
+
// A child workflow was resolved, result could be completed or failed
|
|
58
63
|
ResolveChildWorkflowExecution resolve_child_workflow_execution = 11;
|
|
59
|
-
|
|
64
|
+
// An attempt to signal an external workflow resolved
|
|
60
65
|
ResolveSignalExternalWorkflow resolve_signal_external_workflow = 12;
|
|
61
|
-
|
|
66
|
+
// An attempt to cancel an external workflow resolved
|
|
62
67
|
ResolveRequestCancelExternalWorkflow resolve_request_cancel_external_workflow = 13;
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
+
// Remove the workflow identified by the [WorkflowActivation] containing this job from the cache
|
|
69
|
+
// after performing the activation.
|
|
70
|
+
//
|
|
71
|
+
// If other job variant are present in the list, this variant will be the last job in the
|
|
72
|
+
// job list. The string value is a reason for eviction.
|
|
68
73
|
RemoveFromCache remove_from_cache = 50;
|
|
69
74
|
}
|
|
70
75
|
}
|
|
@@ -123,23 +128,23 @@ message StartWorkflow {
|
|
|
123
128
|
google.protobuf.Timestamp start_time = 23;
|
|
124
129
|
}
|
|
125
130
|
|
|
126
|
-
|
|
131
|
+
// Notify a workflow that a timer has fired
|
|
127
132
|
message FireTimer {
|
|
128
|
-
|
|
133
|
+
// Sequence number as provided by lang in the corresponding StartTimer command
|
|
129
134
|
uint32 seq = 1;
|
|
130
135
|
}
|
|
131
136
|
|
|
132
|
-
|
|
137
|
+
// Notify a workflow that an activity has been resolved
|
|
133
138
|
message ResolveActivity {
|
|
134
|
-
|
|
139
|
+
// Sequence number as provided by lang in the corresponding ScheduleActivity command
|
|
135
140
|
uint32 seq = 1;
|
|
136
141
|
activity_result.ActivityResolution result = 2;
|
|
137
142
|
}
|
|
138
143
|
|
|
139
|
-
|
|
140
|
-
|
|
144
|
+
// Notify a workflow that a start child workflow execution request has succeeded, failed or was
|
|
145
|
+
// cancelled.
|
|
141
146
|
message ResolveChildWorkflowExecutionStart {
|
|
142
|
-
|
|
147
|
+
// Sequence number as provided by lang in the corresponding StartChildWorkflowExecution command
|
|
143
148
|
uint32 seq = 1;
|
|
144
149
|
oneof status {
|
|
145
150
|
ResolveChildWorkflowExecutionStartSuccess succeeded = 2;
|
|
@@ -148,54 +153,54 @@ message ResolveChildWorkflowExecutionStart {
|
|
|
148
153
|
}
|
|
149
154
|
}
|
|
150
155
|
|
|
151
|
-
|
|
156
|
+
// Simply pass the run_id to lang
|
|
152
157
|
message ResolveChildWorkflowExecutionStartSuccess {
|
|
153
158
|
string run_id = 1;
|
|
154
159
|
}
|
|
155
160
|
|
|
156
|
-
|
|
161
|
+
// Provide lang the cause of failure
|
|
157
162
|
message ResolveChildWorkflowExecutionStartFailure {
|
|
158
|
-
|
|
159
|
-
|
|
163
|
+
// Lang should have this information but it's more convenient to pass it back
|
|
164
|
+
// for error construction on the lang side.
|
|
160
165
|
string workflow_id = 1;
|
|
161
166
|
string workflow_type = 2;
|
|
162
167
|
child_workflow.StartChildWorkflowExecutionFailedCause cause = 3;
|
|
163
168
|
}
|
|
164
169
|
|
|
165
|
-
|
|
166
|
-
|
|
170
|
+
// `failure` should be ChildWorkflowFailure with cause set to CancelledFailure.
|
|
171
|
+
// The failure is constructed in core for lang's convenience.
|
|
167
172
|
message ResolveChildWorkflowExecutionStartCancelled {
|
|
168
173
|
temporal.api.failure.v1.Failure failure = 1;
|
|
169
174
|
}
|
|
170
175
|
|
|
171
|
-
|
|
176
|
+
// Notify a workflow that a child workflow execution has been resolved
|
|
172
177
|
message ResolveChildWorkflowExecution {
|
|
173
|
-
|
|
178
|
+
// Sequence number as provided by lang in the corresponding StartChildWorkflowExecution command
|
|
174
179
|
uint32 seq = 1;
|
|
175
180
|
child_workflow.ChildWorkflowResult result = 2;
|
|
176
181
|
}
|
|
177
182
|
|
|
178
|
-
|
|
183
|
+
// Update the workflow's random seed
|
|
179
184
|
message UpdateRandomSeed {
|
|
180
185
|
uint64 randomness_seed = 1;
|
|
181
186
|
}
|
|
182
187
|
|
|
183
|
-
|
|
188
|
+
// Query a workflow
|
|
184
189
|
message QueryWorkflow {
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
190
|
+
// For PollWFTResp `query` field, this will be set to the special value `legacy`. For the
|
|
191
|
+
// `queries` field, the server provides a unique identifier. If it is a `legacy` query,
|
|
192
|
+
// lang cannot issue any commands in response other than to answer the query.
|
|
188
193
|
string query_id = 1;
|
|
189
|
-
|
|
194
|
+
// The query's function/method/etc name
|
|
190
195
|
string query_type = 2;
|
|
191
196
|
repeated temporal.api.common.v1.Payload arguments = 3;
|
|
192
|
-
|
|
197
|
+
// Headers attached to the query
|
|
193
198
|
map<string, temporal.api.common.v1.Payload> headers = 5;
|
|
194
199
|
}
|
|
195
200
|
|
|
196
|
-
|
|
201
|
+
// Cancel a running workflow
|
|
197
202
|
message CancelWorkflow {
|
|
198
|
-
|
|
203
|
+
// Information from the cancellation request
|
|
199
204
|
repeated temporal.api.common.v1.Payload details = 1;
|
|
200
205
|
}
|
|
201
206
|
|
|
@@ -216,20 +221,20 @@ message NotifyHasPatch {
|
|
|
216
221
|
}
|
|
217
222
|
|
|
218
223
|
message ResolveSignalExternalWorkflow {
|
|
219
|
-
|
|
220
|
-
|
|
224
|
+
// Sequence number as provided by lang in the corresponding SignalExternalWorkflowExecution
|
|
225
|
+
// command
|
|
221
226
|
uint32 seq = 1;
|
|
222
|
-
|
|
223
|
-
|
|
227
|
+
// If populated, this signal either failed to be sent or was cancelled depending on failure
|
|
228
|
+
// type / info.
|
|
224
229
|
temporal.api.failure.v1.Failure failure = 2;
|
|
225
230
|
}
|
|
226
231
|
|
|
227
232
|
message ResolveRequestCancelExternalWorkflow {
|
|
228
|
-
|
|
229
|
-
|
|
233
|
+
// Sequence number as provided by lang in the corresponding
|
|
234
|
+
// RequestCancelExternalWorkflowExecution command
|
|
230
235
|
uint32 seq = 1;
|
|
231
|
-
|
|
232
|
-
|
|
236
|
+
// If populated, this signal either failed to be sent or was cancelled depending on failure
|
|
237
|
+
// type / info.
|
|
233
238
|
temporal.api.failure.v1.Failure failure = 2;
|
|
234
239
|
}
|
|
235
240
|
|
|
@@ -258,6 +263,8 @@ message RemoveFromCache {
|
|
|
258
263
|
// There was some fatal error processing the workflow, typically an internal error, but
|
|
259
264
|
// can also happen if then network drops out while paginating. Check message string.
|
|
260
265
|
FATAL = 8;
|
|
266
|
+
// Something went wrong attempting to fetch more history events.
|
|
267
|
+
PAGINATION_OR_HISTORY_FETCH = 9;
|
|
261
268
|
}
|
|
262
269
|
EvictionReason reason = 2;
|
|
263
270
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
syntax = "proto3";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/*
|
|
4
4
|
* Definitions for commands from a workflow in lang SDK to core. While a workflow processes a batch
|
|
5
5
|
* of activation jobs, it accumulates these commands to be sent back to core to conclude that
|
|
6
6
|
* activation.
|
|
7
7
|
*/
|
|
8
8
|
package coresdk.workflow_commands;
|
|
9
|
+
option ruby_package = "Temporalio::Bridge::Api::WorkflowCommands";
|
|
9
10
|
|
|
10
11
|
import "google/protobuf/duration.proto";
|
|
11
12
|
import "google/protobuf/timestamp.proto";
|
|
@@ -40,118 +41,118 @@ message WorkflowCommand {
|
|
|
40
41
|
}
|
|
41
42
|
|
|
42
43
|
message StartTimer {
|
|
43
|
-
|
|
44
|
+
// Lang's incremental sequence number, used as the operation identifier
|
|
44
45
|
uint32 seq = 1;
|
|
45
46
|
google.protobuf.Duration start_to_fire_timeout = 2;
|
|
46
47
|
}
|
|
47
48
|
|
|
48
49
|
message CancelTimer {
|
|
49
|
-
|
|
50
|
+
// Lang's incremental sequence number as passed to `StartTimer`
|
|
50
51
|
uint32 seq = 1;
|
|
51
52
|
}
|
|
52
53
|
|
|
53
54
|
message ScheduleActivity {
|
|
54
|
-
|
|
55
|
+
// Lang's incremental sequence number, used as the operation identifier
|
|
55
56
|
uint32 seq = 1;
|
|
56
57
|
string activity_id = 2;
|
|
57
58
|
string activity_type = 3;
|
|
58
59
|
// The name of the task queue to place this activity request in
|
|
59
60
|
string task_queue = 5;
|
|
60
61
|
map<string, temporal.api.common.v1.Payload> headers = 6;
|
|
61
|
-
|
|
62
|
+
// Arguments/input to the activity. Called "input" upstream.
|
|
62
63
|
repeated temporal.api.common.v1.Payload arguments = 7;
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
// Indicates how long the caller is willing to wait for an activity completion. Limits how long
|
|
65
|
+
// retries will be attempted. Either this or start_to_close_timeout_seconds must be specified.
|
|
66
|
+
// When not specified defaults to the workflow execution timeout.
|
|
66
67
|
google.protobuf.Duration schedule_to_close_timeout = 8;
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
// Limits time an activity task can stay in a task queue before a worker picks it up. This
|
|
69
|
+
// timeout is always non retryable as all a retry would achieve is to put it back into the same
|
|
70
|
+
// queue. Defaults to schedule_to_close_timeout or workflow execution timeout if not specified.
|
|
70
71
|
google.protobuf.Duration schedule_to_start_timeout = 9;
|
|
71
|
-
|
|
72
|
-
|
|
72
|
+
// Maximum time an activity is allowed to execute after a pick up by a worker. This timeout is
|
|
73
|
+
// always retryable. Either this or schedule_to_close_timeout must be specified.
|
|
73
74
|
google.protobuf.Duration start_to_close_timeout = 10;
|
|
74
|
-
|
|
75
|
+
// Maximum time allowed between successful worker heartbeats.
|
|
75
76
|
google.protobuf.Duration heartbeat_timeout = 11;
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
77
|
+
// Activities are provided by a default retry policy controlled through the service dynamic
|
|
78
|
+
// configuration. Retries are happening up to schedule_to_close_timeout. To disable retries set
|
|
79
|
+
// retry_policy.maximum_attempts to 1.
|
|
79
80
|
temporal.api.common.v1.RetryPolicy retry_policy = 12;
|
|
80
|
-
|
|
81
|
+
// Defines how the workflow will wait (or not) for cancellation of the activity to be confirmed
|
|
81
82
|
ActivityCancellationType cancellation_type = 13;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
// If set, the worker will not tell the service that it can immediately start executing this
|
|
84
|
+
// activity. When unset/default, workers will always attempt to do so if activity execution
|
|
85
|
+
// slots are available.
|
|
85
86
|
bool do_not_eagerly_execute = 14;
|
|
86
87
|
}
|
|
87
88
|
|
|
88
89
|
message ScheduleLocalActivity {
|
|
89
|
-
|
|
90
|
+
// Lang's incremental sequence number, used as the operation identifier
|
|
90
91
|
uint32 seq = 1;
|
|
91
92
|
string activity_id = 2;
|
|
92
93
|
string activity_type = 3;
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
// Local activities can start with a non-1 attempt, if lang has been told to backoff using
|
|
95
|
+
// a timer before retrying. It should pass the attempt number from a `DoBackoff` activity
|
|
96
|
+
// resolution.
|
|
96
97
|
uint32 attempt = 4;
|
|
97
|
-
|
|
98
|
-
|
|
98
|
+
// If this local activity is a retry (as per the attempt field) this needs to be the original
|
|
99
|
+
// scheduling time (as provided in `DoBackoff`)
|
|
99
100
|
google.protobuf.Timestamp original_schedule_time = 5;
|
|
100
101
|
map<string, temporal.api.common.v1.Payload> headers = 6;
|
|
101
|
-
|
|
102
|
+
// Arguments/input to the activity.
|
|
102
103
|
repeated temporal.api.common.v1.Payload arguments = 7;
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
104
|
+
// Indicates how long the caller is willing to wait for local activity completion. Limits how
|
|
105
|
+
// long retries will be attempted. When not specified defaults to the workflow execution
|
|
106
|
+
// timeout (which may be unset).
|
|
106
107
|
google.protobuf.Duration schedule_to_close_timeout = 8;
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
108
|
+
// Limits time the local activity can idle internally before being executed. That can happen if
|
|
109
|
+
// the worker is currently at max concurrent local activity executions. This timeout is always
|
|
110
|
+
// non retryable as all a retry would achieve is to put it back into the same queue. Defaults
|
|
111
|
+
// to `schedule_to_close_timeout` if not specified and that is set. Must be <=
|
|
112
|
+
// `schedule_to_close_timeout` when set, otherwise, it will be clamped down.
|
|
112
113
|
google.protobuf.Duration schedule_to_start_timeout = 9;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
114
|
+
// Maximum time the local activity is allowed to execute after the task is dispatched. This
|
|
115
|
+
// timeout is always retryable. Either or both of `schedule_to_close_timeout` and this must be
|
|
116
|
+
// specified. If set, this must be <= `schedule_to_close_timeout`, otherwise, it will be
|
|
117
|
+
// clamped down.
|
|
117
118
|
google.protobuf.Duration start_to_close_timeout = 10;
|
|
118
|
-
|
|
119
|
-
|
|
119
|
+
// Specify a retry policy for the local activity. By default local activities will be retried
|
|
120
|
+
// indefinitely.
|
|
120
121
|
temporal.api.common.v1.RetryPolicy retry_policy = 11;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
122
|
+
// If the activity is retrying and backoff would exceed this value, lang will be told to
|
|
123
|
+
// schedule a timer and retry the activity after. Otherwise, backoff will happen internally in
|
|
124
|
+
// core. Defaults to 1 minute.
|
|
124
125
|
google.protobuf.Duration local_retry_threshold = 12;
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
126
|
+
// Defines how the workflow will wait (or not) for cancellation of the activity to be
|
|
127
|
+
// confirmed. Lang should default this to `WAIT_CANCELLATION_COMPLETED`, even though proto
|
|
128
|
+
// will default to `TRY_CANCEL` automatically.
|
|
128
129
|
ActivityCancellationType cancellation_type = 13;
|
|
129
130
|
}
|
|
130
131
|
|
|
131
132
|
enum ActivityCancellationType {
|
|
132
|
-
|
|
133
|
+
// Initiate a cancellation request and immediately report cancellation to the workflow.
|
|
133
134
|
TRY_CANCEL = 0;
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
135
|
+
// Wait for activity cancellation completion. Note that activity must heartbeat to receive a
|
|
136
|
+
// cancellation notification. This can block the cancellation for a long time if activity
|
|
137
|
+
// doesn't heartbeat or chooses to ignore the cancellation request.
|
|
137
138
|
WAIT_CANCELLATION_COMPLETED = 1;
|
|
138
|
-
|
|
139
|
-
|
|
139
|
+
// Do not request cancellation of the activity and immediately report cancellation to the
|
|
140
|
+
// workflow
|
|
140
141
|
ABANDON = 2;
|
|
141
142
|
}
|
|
142
143
|
|
|
143
144
|
message RequestCancelActivity {
|
|
144
|
-
|
|
145
|
+
// Lang's incremental sequence number as passed to `ScheduleActivity`
|
|
145
146
|
uint32 seq = 1;
|
|
146
147
|
}
|
|
147
148
|
|
|
148
149
|
message RequestCancelLocalActivity {
|
|
149
|
-
|
|
150
|
+
// Lang's incremental sequence number as passed to `ScheduleLocalActivity`
|
|
150
151
|
uint32 seq = 1;
|
|
151
152
|
}
|
|
152
153
|
|
|
153
154
|
message QueryResult {
|
|
154
|
-
|
|
155
|
+
// Corresponds to the id provided in the activation job
|
|
155
156
|
string query_id = 1;
|
|
156
157
|
oneof variant {
|
|
157
158
|
QuerySuccess succeeded = 2;
|
|
@@ -163,12 +164,12 @@ message QuerySuccess {
|
|
|
163
164
|
temporal.api.common.v1.Payload response = 1;
|
|
164
165
|
}
|
|
165
166
|
|
|
166
|
-
|
|
167
|
+
// Issued when the workflow completes successfully
|
|
167
168
|
message CompleteWorkflowExecution {
|
|
168
169
|
temporal.api.common.v1.Payload result = 1;
|
|
169
170
|
}
|
|
170
171
|
|
|
171
|
-
|
|
172
|
+
// Issued when the workflow errors out
|
|
172
173
|
message FailWorkflowExecution {
|
|
173
174
|
temporal.api.failure.v1.Failure failure = 1;
|
|
174
175
|
}
|
|
@@ -199,11 +200,11 @@ message ContinueAsNewWorkflowExecution {
|
|
|
199
200
|
temporal.api.common.v1.RetryPolicy retry_policy = 9;
|
|
200
201
|
}
|
|
201
202
|
|
|
202
|
-
|
|
203
|
-
|
|
203
|
+
// Indicate a workflow has completed as cancelled. Generally sent as a response to an activation
|
|
204
|
+
// containing a cancellation job.
|
|
204
205
|
message CancelWorkflowExecution {}
|
|
205
206
|
|
|
206
|
-
|
|
207
|
+
// A request to set/check if a certain patch is present or not
|
|
207
208
|
message SetPatchMarker {
|
|
208
209
|
// A user-chosen identifier for this patch. If the same identifier is used in multiple places in
|
|
209
210
|
// the code, those places are considered to be versioned as one unit. IE: The check call will
|
|
@@ -214,47 +215,47 @@ message SetPatchMarker {
|
|
|
214
215
|
bool deprecated = 2;
|
|
215
216
|
}
|
|
216
217
|
|
|
217
|
-
|
|
218
|
+
// Start a child workflow execution
|
|
218
219
|
message StartChildWorkflowExecution {
|
|
219
|
-
|
|
220
|
+
// Lang's incremental sequence number, used as the operation identifier
|
|
220
221
|
uint32 seq = 1;
|
|
221
222
|
string namespace = 2;
|
|
222
223
|
string workflow_id = 3;
|
|
223
224
|
string workflow_type = 4;
|
|
224
225
|
string task_queue = 5;
|
|
225
226
|
repeated temporal.api.common.v1.Payload input = 6;
|
|
226
|
-
|
|
227
|
+
// Total workflow execution timeout including retries and continue as new.
|
|
227
228
|
google.protobuf.Duration workflow_execution_timeout = 7;
|
|
228
|
-
|
|
229
|
+
// Timeout of a single workflow run.
|
|
229
230
|
google.protobuf.Duration workflow_run_timeout = 8;
|
|
230
|
-
|
|
231
|
+
// Timeout of a single workflow task.
|
|
231
232
|
google.protobuf.Duration workflow_task_timeout = 9;
|
|
232
|
-
|
|
233
|
+
// Default: PARENT_CLOSE_POLICY_TERMINATE.
|
|
233
234
|
child_workflow.ParentClosePolicy parent_close_policy = 10;
|
|
234
235
|
// string control = 11; (unused from StartChildWorkflowExecutionCommandAttributes)
|
|
235
236
|
// Default: WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE.
|
|
236
237
|
temporal.api.enums.v1.WorkflowIdReusePolicy workflow_id_reuse_policy = 12;
|
|
237
238
|
temporal.api.common.v1.RetryPolicy retry_policy = 13;
|
|
238
239
|
string cron_schedule = 14;
|
|
239
|
-
|
|
240
|
+
// Header fields
|
|
240
241
|
map<string, temporal.api.common.v1.Payload> headers = 15;
|
|
241
|
-
|
|
242
|
+
// Memo fields
|
|
242
243
|
map<string, temporal.api.common.v1.Payload> memo = 16;
|
|
243
|
-
|
|
244
|
+
// Search attributes
|
|
244
245
|
map<string, temporal.api.common.v1.Payload> search_attributes = 17;
|
|
245
|
-
|
|
246
|
+
// Defines behaviour of the underlying workflow when child workflow cancellation has been requested.
|
|
246
247
|
child_workflow.ChildWorkflowCancellationType cancellation_type = 18;
|
|
247
248
|
}
|
|
248
249
|
|
|
249
|
-
|
|
250
|
+
// Cancel a child workflow
|
|
250
251
|
message CancelChildWorkflowExecution {
|
|
251
252
|
// Sequence number as given to the `StartChildWorkflowExecution` command
|
|
252
253
|
uint32 child_workflow_seq = 1;
|
|
253
254
|
}
|
|
254
255
|
|
|
255
|
-
|
|
256
|
+
// Request cancellation of an external workflow execution (which may be a started child)
|
|
256
257
|
message RequestCancelExternalWorkflowExecution {
|
|
257
|
-
|
|
258
|
+
// Lang's incremental sequence number, used as the operation identifier
|
|
258
259
|
uint32 seq = 1;
|
|
259
260
|
// What workflow is being targeted
|
|
260
261
|
oneof target {
|
|
@@ -265,9 +266,9 @@ message RequestCancelExternalWorkflowExecution {
|
|
|
265
266
|
}
|
|
266
267
|
}
|
|
267
268
|
|
|
268
|
-
|
|
269
|
+
// Send a signal to an external or child workflow
|
|
269
270
|
message SignalExternalWorkflowExecution {
|
|
270
|
-
|
|
271
|
+
// Lang's incremental sequence number, used as the operation identifier
|
|
271
272
|
uint32 seq = 1;
|
|
272
273
|
// What workflow is being targeted
|
|
273
274
|
oneof target {
|
|
@@ -276,23 +277,23 @@ message SignalExternalWorkflowExecution {
|
|
|
276
277
|
// The desired target must be a child of the issuing workflow, and this is its workflow id
|
|
277
278
|
string child_workflow_id = 3;
|
|
278
279
|
}
|
|
279
|
-
|
|
280
|
+
// Name of the signal handler
|
|
280
281
|
string signal_name = 4;
|
|
281
|
-
|
|
282
|
+
// Arguments for the handler
|
|
282
283
|
repeated temporal.api.common.v1.Payload args = 5;
|
|
283
|
-
|
|
284
|
+
// Headers to attach to the signal
|
|
284
285
|
map<string, temporal.api.common.v1.Payload> headers = 6;
|
|
285
286
|
}
|
|
286
287
|
|
|
287
|
-
|
|
288
|
+
// Can be used to cancel not-already-sent `SignalExternalWorkflowExecution` commands
|
|
288
289
|
message CancelSignalWorkflow {
|
|
289
|
-
|
|
290
|
+
// Lang's incremental sequence number as passed to `SignalExternalWorkflowExecution`
|
|
290
291
|
uint32 seq = 1;
|
|
291
292
|
}
|
|
292
293
|
|
|
293
294
|
message UpsertWorkflowSearchAttributes {
|
|
294
|
-
|
|
295
|
-
|
|
295
|
+
// SearchAttributes fields - equivalent to indexed_fields on api. Key = search index, Value =
|
|
296
|
+
// value?
|
|
296
297
|
map<string, temporal.api.common.v1.Payload> search_attributes = 1;
|
|
297
298
|
}
|
|
298
299
|
|
package/sdk-core/protos/local/temporal/sdk/core/workflow_completion/workflow_completion.proto
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
syntax = "proto3";
|
|
2
2
|
|
|
3
3
|
package coresdk.workflow_completion;
|
|
4
|
+
option ruby_package = "Temporalio::Bridge::Api::WorkflowCompletion";
|
|
4
5
|
|
|
5
6
|
import "temporal/api/failure/v1/message.proto";
|
|
7
|
+
import "temporal/api/enums/v1/failed_cause.proto";
|
|
6
8
|
import "temporal/sdk/core/common/common.proto";
|
|
7
9
|
import "temporal/sdk/core/workflow_commands/workflow_commands.proto";
|
|
8
10
|
|
|
9
|
-
|
|
11
|
+
// Result of a single workflow activation, reported from lang to core
|
|
10
12
|
message WorkflowActivationCompletion {
|
|
11
13
|
// The run id from the workflow activation you are completing
|
|
12
14
|
string run_id = 1;
|
|
@@ -16,14 +18,18 @@ message WorkflowActivationCompletion {
|
|
|
16
18
|
}
|
|
17
19
|
}
|
|
18
20
|
|
|
19
|
-
|
|
21
|
+
// Successful workflow activation with a list of commands generated by the workflow execution
|
|
20
22
|
message Success {
|
|
21
23
|
// A list of commands to send back to the temporal server
|
|
22
24
|
repeated workflow_commands.WorkflowCommand commands = 1;
|
|
25
|
+
// Any internal flags which the lang SDK used in the processing of this activation
|
|
26
|
+
repeated uint32 used_internal_flags = 6;
|
|
23
27
|
}
|
|
24
28
|
|
|
25
|
-
|
|
29
|
+
// Failure to activate or execute a workflow
|
|
26
30
|
message Failure {
|
|
27
31
|
temporal.api.failure.v1.Failure failure = 1;
|
|
32
|
+
// Forces overriding the WFT failure cause
|
|
33
|
+
temporal.api.enums.v1.WorkflowTaskFailedCause force_cause = 2;
|
|
28
34
|
}
|
|
29
35
|
|
|
@@ -28,8 +28,8 @@ option go_package = "go.temporal.io/api/testservice/v1;testservice";
|
|
|
28
28
|
option java_package = "io.temporal.api.testservice.v1";
|
|
29
29
|
option java_multiple_files = true;
|
|
30
30
|
option java_outer_classname = "RequestResponseProto";
|
|
31
|
-
option ruby_package = "
|
|
32
|
-
option csharp_namespace = "
|
|
31
|
+
option ruby_package = "Temporalio::Api::TestService::V1";
|
|
32
|
+
option csharp_namespace = "Temporalio.Api.TestService.V1";
|
|
33
33
|
|
|
34
34
|
import "google/protobuf/duration.proto";
|
|
35
35
|
import "google/protobuf/timestamp.proto";
|
|
@@ -28,8 +28,8 @@ option go_package = "go.temporal.io/api/testservice/v1;testservice";
|
|
|
28
28
|
option java_package = "io.temporal.api.testservice.v1";
|
|
29
29
|
option java_multiple_files = true;
|
|
30
30
|
option java_outer_classname = "ServiceProto";
|
|
31
|
-
option ruby_package = "
|
|
32
|
-
option csharp_namespace = "
|
|
31
|
+
option ruby_package = "Temporalio::Api::TestService::V1";
|
|
32
|
+
option csharp_namespace = "Temporalio.Api.TestService.V1";
|
|
33
33
|
|
|
34
34
|
import "temporal/api/testservice/v1/request_response.proto";
|
|
35
35
|
import "google/protobuf/empty.proto";
|