clara-temporalio 0.4.3-aarch64-linux
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.
- checksums.yaml +7 -0
- data/.yardopts +2 -0
- data/Gemfile +27 -0
- data/Rakefile +101 -0
- data/lib/temporalio/activity/cancellation_details.rb +58 -0
- data/lib/temporalio/activity/complete_async_error.rb +11 -0
- data/lib/temporalio/activity/context.rb +131 -0
- data/lib/temporalio/activity/definition.rb +197 -0
- data/lib/temporalio/activity/info.rb +70 -0
- data/lib/temporalio/activity.rb +14 -0
- data/lib/temporalio/api/activity/v1/message.rb +25 -0
- data/lib/temporalio/api/batch/v1/message.rb +38 -0
- data/lib/temporalio/api/cloud/account/v1/message.rb +28 -0
- data/lib/temporalio/api/cloud/cloudservice/v1/request_response.rb +135 -0
- data/lib/temporalio/api/cloud/cloudservice/v1/service.rb +25 -0
- data/lib/temporalio/api/cloud/cloudservice.rb +3 -0
- data/lib/temporalio/api/cloud/identity/v1/message.rb +46 -0
- data/lib/temporalio/api/cloud/namespace/v1/message.rb +46 -0
- data/lib/temporalio/api/cloud/nexus/v1/message.rb +32 -0
- data/lib/temporalio/api/cloud/operation/v1/message.rb +28 -0
- data/lib/temporalio/api/cloud/region/v1/message.rb +24 -0
- data/lib/temporalio/api/cloud/resource/v1/message.rb +23 -0
- data/lib/temporalio/api/cloud/sink/v1/message.rb +24 -0
- data/lib/temporalio/api/cloud/usage/v1/message.rb +31 -0
- data/lib/temporalio/api/command/v1/message.rb +46 -0
- data/lib/temporalio/api/common/v1/grpc_status.rb +23 -0
- data/lib/temporalio/api/common/v1/message.rb +49 -0
- data/lib/temporalio/api/deployment/v1/message.rb +39 -0
- data/lib/temporalio/api/enums/v1/batch_operation.rb +22 -0
- data/lib/temporalio/api/enums/v1/command_type.rb +21 -0
- data/lib/temporalio/api/enums/v1/common.rb +28 -0
- data/lib/temporalio/api/enums/v1/deployment.rb +23 -0
- data/lib/temporalio/api/enums/v1/event_type.rb +21 -0
- data/lib/temporalio/api/enums/v1/failed_cause.rb +26 -0
- data/lib/temporalio/api/enums/v1/namespace.rb +23 -0
- data/lib/temporalio/api/enums/v1/nexus.rb +21 -0
- data/lib/temporalio/api/enums/v1/query.rb +22 -0
- data/lib/temporalio/api/enums/v1/reset.rb +23 -0
- data/lib/temporalio/api/enums/v1/schedule.rb +21 -0
- data/lib/temporalio/api/enums/v1/task_queue.rb +25 -0
- data/lib/temporalio/api/enums/v1/update.rb +22 -0
- data/lib/temporalio/api/enums/v1/workflow.rb +31 -0
- data/lib/temporalio/api/errordetails/v1/message.rb +44 -0
- data/lib/temporalio/api/export/v1/message.rb +24 -0
- data/lib/temporalio/api/failure/v1/message.rb +38 -0
- data/lib/temporalio/api/filter/v1/message.rb +27 -0
- data/lib/temporalio/api/history/v1/message.rb +94 -0
- data/lib/temporalio/api/namespace/v1/message.rb +31 -0
- data/lib/temporalio/api/nexus/v1/message.rb +41 -0
- data/lib/temporalio/api/operatorservice/v1/request_response.rb +49 -0
- data/lib/temporalio/api/operatorservice/v1/service.rb +23 -0
- data/lib/temporalio/api/operatorservice.rb +3 -0
- data/lib/temporalio/api/payload_visitor.rb +1668 -0
- data/lib/temporalio/api/protocol/v1/message.rb +23 -0
- data/lib/temporalio/api/query/v1/message.rb +28 -0
- data/lib/temporalio/api/replication/v1/message.rb +26 -0
- data/lib/temporalio/api/rules/v1/message.rb +27 -0
- data/lib/temporalio/api/schedule/v1/message.rb +43 -0
- data/lib/temporalio/api/sdk/v1/enhanced_stack_trace.rb +25 -0
- data/lib/temporalio/api/sdk/v1/task_complete_metadata.rb +21 -0
- data/lib/temporalio/api/sdk/v1/user_metadata.rb +23 -0
- data/lib/temporalio/api/sdk/v1/workflow_metadata.rb +23 -0
- data/lib/temporalio/api/taskqueue/v1/message.rb +48 -0
- data/lib/temporalio/api/testservice/v1/request_response.rb +31 -0
- data/lib/temporalio/api/testservice/v1/service.rb +23 -0
- data/lib/temporalio/api/update/v1/message.rb +33 -0
- data/lib/temporalio/api/version/v1/message.rb +26 -0
- data/lib/temporalio/api/workflow/v1/message.rb +63 -0
- data/lib/temporalio/api/workflowservice/v1/request_response.rb +244 -0
- data/lib/temporalio/api/workflowservice/v1/service.rb +23 -0
- data/lib/temporalio/api/workflowservice.rb +3 -0
- data/lib/temporalio/api.rb +15 -0
- data/lib/temporalio/cancellation.rb +170 -0
- data/lib/temporalio/client/activity_id_reference.rb +32 -0
- data/lib/temporalio/client/async_activity_handle.rb +85 -0
- data/lib/temporalio/client/connection/cloud_service.rb +786 -0
- data/lib/temporalio/client/connection/operator_service.rb +201 -0
- data/lib/temporalio/client/connection/service.rb +42 -0
- data/lib/temporalio/client/connection/test_service.rb +111 -0
- data/lib/temporalio/client/connection/workflow_service.rb +1326 -0
- data/lib/temporalio/client/connection.rb +316 -0
- data/lib/temporalio/client/interceptor.rb +457 -0
- data/lib/temporalio/client/schedule.rb +991 -0
- data/lib/temporalio/client/schedule_handle.rb +126 -0
- data/lib/temporalio/client/with_start_workflow_operation.rb +115 -0
- data/lib/temporalio/client/workflow_execution.rb +119 -0
- data/lib/temporalio/client/workflow_execution_count.rb +36 -0
- data/lib/temporalio/client/workflow_execution_status.rb +18 -0
- data/lib/temporalio/client/workflow_handle.rb +389 -0
- data/lib/temporalio/client/workflow_query_reject_condition.rb +14 -0
- data/lib/temporalio/client/workflow_update_handle.rb +65 -0
- data/lib/temporalio/client/workflow_update_wait_stage.rb +17 -0
- data/lib/temporalio/client.rb +625 -0
- data/lib/temporalio/common_enums.rb +55 -0
- data/lib/temporalio/contrib/open_telemetry.rb +469 -0
- data/lib/temporalio/converters/data_converter.rb +99 -0
- data/lib/temporalio/converters/failure_converter.rb +205 -0
- data/lib/temporalio/converters/payload_codec.rb +26 -0
- data/lib/temporalio/converters/payload_converter/binary_null.rb +34 -0
- data/lib/temporalio/converters/payload_converter/binary_plain.rb +35 -0
- data/lib/temporalio/converters/payload_converter/binary_protobuf.rb +42 -0
- data/lib/temporalio/converters/payload_converter/composite.rb +66 -0
- data/lib/temporalio/converters/payload_converter/encoding.rb +35 -0
- data/lib/temporalio/converters/payload_converter/json_plain.rb +44 -0
- data/lib/temporalio/converters/payload_converter/json_protobuf.rb +41 -0
- data/lib/temporalio/converters/payload_converter.rb +71 -0
- data/lib/temporalio/converters/raw_value.rb +20 -0
- data/lib/temporalio/converters.rb +9 -0
- data/lib/temporalio/error/failure.rb +237 -0
- data/lib/temporalio/error.rb +156 -0
- data/lib/temporalio/internal/bridge/3.2/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/3.3/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/3.4/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/api/activity_result/activity_result.rb +34 -0
- data/lib/temporalio/internal/bridge/api/activity_task/activity_task.rb +32 -0
- data/lib/temporalio/internal/bridge/api/child_workflow/child_workflow.rb +33 -0
- data/lib/temporalio/internal/bridge/api/common/common.rb +27 -0
- data/lib/temporalio/internal/bridge/api/core_interface.rb +40 -0
- data/lib/temporalio/internal/bridge/api/external_data/external_data.rb +27 -0
- data/lib/temporalio/internal/bridge/api/nexus/nexus.rb +34 -0
- data/lib/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rb +56 -0
- data/lib/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rb +58 -0
- data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +31 -0
- data/lib/temporalio/internal/bridge/api.rb +3 -0
- data/lib/temporalio/internal/bridge/client.rb +95 -0
- data/lib/temporalio/internal/bridge/runtime.rb +56 -0
- data/lib/temporalio/internal/bridge/testing.rb +69 -0
- data/lib/temporalio/internal/bridge/worker.rb +109 -0
- data/lib/temporalio/internal/bridge.rb +36 -0
- data/lib/temporalio/internal/client/implementation.rb +926 -0
- data/lib/temporalio/internal/metric.rb +122 -0
- data/lib/temporalio/internal/proto_utils.rb +165 -0
- data/lib/temporalio/internal/worker/activity_worker.rb +448 -0
- data/lib/temporalio/internal/worker/multi_runner.rb +213 -0
- data/lib/temporalio/internal/worker/workflow_instance/child_workflow_handle.rb +54 -0
- data/lib/temporalio/internal/worker/workflow_instance/context.rb +391 -0
- data/lib/temporalio/internal/worker/workflow_instance/details.rb +49 -0
- data/lib/temporalio/internal/worker/workflow_instance/external_workflow_handle.rb +32 -0
- data/lib/temporalio/internal/worker/workflow_instance/externally_immutable_hash.rb +22 -0
- data/lib/temporalio/internal/worker/workflow_instance/handler_execution.rb +25 -0
- data/lib/temporalio/internal/worker/workflow_instance/handler_hash.rb +41 -0
- data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +97 -0
- data/lib/temporalio/internal/worker/workflow_instance/inbound_implementation.rb +62 -0
- data/lib/temporalio/internal/worker/workflow_instance/outbound_implementation.rb +404 -0
- data/lib/temporalio/internal/worker/workflow_instance/replay_safe_logger.rb +37 -0
- data/lib/temporalio/internal/worker/workflow_instance/replay_safe_metric.rb +40 -0
- data/lib/temporalio/internal/worker/workflow_instance/scheduler.rb +183 -0
- data/lib/temporalio/internal/worker/workflow_instance.rb +800 -0
- data/lib/temporalio/internal/worker/workflow_worker.rb +249 -0
- data/lib/temporalio/internal.rb +7 -0
- data/lib/temporalio/metric.rb +109 -0
- data/lib/temporalio/priority.rb +59 -0
- data/lib/temporalio/retry_policy.rb +74 -0
- data/lib/temporalio/runtime/metric_buffer.rb +94 -0
- data/lib/temporalio/runtime.rb +352 -0
- data/lib/temporalio/scoped_logger.rb +96 -0
- data/lib/temporalio/search_attributes.rb +356 -0
- data/lib/temporalio/testing/activity_environment.rb +175 -0
- data/lib/temporalio/testing/workflow_environment.rb +406 -0
- data/lib/temporalio/testing.rb +10 -0
- data/lib/temporalio/version.rb +5 -0
- data/lib/temporalio/versioning_override.rb +55 -0
- data/lib/temporalio/worker/activity_executor/fiber.rb +49 -0
- data/lib/temporalio/worker/activity_executor/thread_pool.rb +46 -0
- data/lib/temporalio/worker/activity_executor.rb +55 -0
- data/lib/temporalio/worker/deployment_options.rb +45 -0
- data/lib/temporalio/worker/interceptor.rb +367 -0
- data/lib/temporalio/worker/poller_behavior.rb +61 -0
- data/lib/temporalio/worker/thread_pool.rb +237 -0
- data/lib/temporalio/worker/tuner.rb +189 -0
- data/lib/temporalio/worker/workflow_executor/thread_pool.rb +236 -0
- data/lib/temporalio/worker/workflow_executor.rb +26 -0
- data/lib/temporalio/worker/workflow_replayer.rb +349 -0
- data/lib/temporalio/worker.rb +633 -0
- data/lib/temporalio/worker_deployment_version.rb +67 -0
- data/lib/temporalio/workflow/activity_cancellation_type.rb +20 -0
- data/lib/temporalio/workflow/child_workflow_cancellation_type.rb +21 -0
- data/lib/temporalio/workflow/child_workflow_handle.rb +43 -0
- data/lib/temporalio/workflow/definition.rb +680 -0
- data/lib/temporalio/workflow/external_workflow_handle.rb +41 -0
- data/lib/temporalio/workflow/future.rb +151 -0
- data/lib/temporalio/workflow/handler_unfinished_policy.rb +13 -0
- data/lib/temporalio/workflow/info.rb +107 -0
- data/lib/temporalio/workflow/parent_close_policy.rb +19 -0
- data/lib/temporalio/workflow/update_info.rb +20 -0
- data/lib/temporalio/workflow.rb +594 -0
- data/lib/temporalio/workflow_history.rb +47 -0
- data/lib/temporalio.rb +12 -0
- data/temporalio.gemspec +31 -0
- metadata +267 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'temporalio/internal/bridge/worker'
|
|
4
|
+
|
|
5
|
+
module Temporalio
|
|
6
|
+
WorkerDeploymentVersion = Data.define(
|
|
7
|
+
:deployment_name,
|
|
8
|
+
:build_id
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
# Represents the version of a specific worker deployment.
|
|
12
|
+
#
|
|
13
|
+
# WARNING: Experimental API.
|
|
14
|
+
class WorkerDeploymentVersion
|
|
15
|
+
# Parse a version from a canonical string, which must be in the format
|
|
16
|
+
# `<deployment_name>.<build_id>`. Deployment name must not have a `.` in it.
|
|
17
|
+
#
|
|
18
|
+
# @param canonical [String] The canonical string representation of the version.
|
|
19
|
+
# @return [WorkerDeploymentVersion] The parsed version.
|
|
20
|
+
def self.from_canonical_string(canonical)
|
|
21
|
+
parts = canonical.split('.', 2)
|
|
22
|
+
if parts.length != 2
|
|
23
|
+
raise ArgumentError,
|
|
24
|
+
"Cannot parse version string: #{canonical}, must be in format <deployment_name>.<build_id>"
|
|
25
|
+
end
|
|
26
|
+
new(deployment_name: parts[0], build_id: parts[1])
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# @!visibility private
|
|
30
|
+
def self._from_bridge(bridge)
|
|
31
|
+
return nil if bridge.nil?
|
|
32
|
+
|
|
33
|
+
new(deployment_name: bridge.deployment_name, build_id: bridge.build_id)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# Create WorkerDeploymentVersion.
|
|
37
|
+
#
|
|
38
|
+
# @param deployment_name [String] The name of the deployment.
|
|
39
|
+
# @param build_id [String] The build identifier specific to this worker build.
|
|
40
|
+
def initialize(deployment_name:, build_id:) # rubocop:disable Lint/UselessMethodDefinition
|
|
41
|
+
super
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Returns the canonical string representation of the version.
|
|
45
|
+
#
|
|
46
|
+
# @return [String]
|
|
47
|
+
def to_canonical_string
|
|
48
|
+
"#{deployment_name}.#{build_id}"
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
# @!visibility private
|
|
52
|
+
def _to_bridge_options
|
|
53
|
+
Internal::Bridge::Worker::WorkerDeploymentVersion.new(
|
|
54
|
+
deployment_name: deployment_name,
|
|
55
|
+
build_id: build_id
|
|
56
|
+
)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# @!visibility private
|
|
60
|
+
def _to_proto
|
|
61
|
+
Api::Deployment::V1::WorkerDeploymentVersion.new(
|
|
62
|
+
deployment_name: deployment_name,
|
|
63
|
+
build_id: build_id
|
|
64
|
+
)
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'temporalio/internal/bridge/api'
|
|
4
|
+
|
|
5
|
+
module Temporalio
|
|
6
|
+
module Workflow
|
|
7
|
+
# Cancellation types for activities.
|
|
8
|
+
module ActivityCancellationType
|
|
9
|
+
# Initiate a cancellation request and immediately report cancellation to the workflow.
|
|
10
|
+
TRY_CANCEL = Internal::Bridge::Api::WorkflowCommands::ActivityCancellationType::TRY_CANCEL
|
|
11
|
+
# Wait for activity cancellation completion. Note that activity must heartbeat to receive a cancellation
|
|
12
|
+
# notification. This can block the cancellation for a long time if activity doesn't heartbeat or chooses to ignore
|
|
13
|
+
# the cancellation request.
|
|
14
|
+
WAIT_CANCELLATION_COMPLETED =
|
|
15
|
+
Internal::Bridge::Api::WorkflowCommands::ActivityCancellationType::WAIT_CANCELLATION_COMPLETED
|
|
16
|
+
# Do not request cancellation of the activity and immediately report cancellation to the workflow.
|
|
17
|
+
ABANDON = Internal::Bridge::Api::WorkflowCommands::ActivityCancellationType::ABANDON
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'temporalio/internal/bridge/api'
|
|
4
|
+
|
|
5
|
+
module Temporalio
|
|
6
|
+
module Workflow
|
|
7
|
+
# Cancellation types for child workflows.
|
|
8
|
+
module ChildWorkflowCancellationType
|
|
9
|
+
# Do not request cancellation of the child workflow if already scheduled.
|
|
10
|
+
ABANDON = Internal::Bridge::Api::ChildWorkflow::ChildWorkflowCancellationType::ABANDON
|
|
11
|
+
# Initiate a cancellation request and immediately report cancellation to the parent.
|
|
12
|
+
TRY_CANCEL = Internal::Bridge::Api::ChildWorkflow::ChildWorkflowCancellationType::TRY_CANCEL
|
|
13
|
+
# Wait for child cancellation completion.
|
|
14
|
+
WAIT_CANCELLATION_COMPLETED =
|
|
15
|
+
Internal::Bridge::Api::ChildWorkflow::ChildWorkflowCancellationType::WAIT_CANCELLATION_COMPLETED
|
|
16
|
+
# Request cancellation of the child and wait for confirmation that the request was received.
|
|
17
|
+
WAIT_CANCELLATION_REQUESTED =
|
|
18
|
+
Internal::Bridge::Api::ChildWorkflow::ChildWorkflowCancellationType::WAIT_CANCELLATION_REQUESTED
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Temporalio
|
|
4
|
+
module Workflow
|
|
5
|
+
# Handle for interacting with a child workflow.
|
|
6
|
+
#
|
|
7
|
+
# This is created via {Workflow.start_child_workflow}, it is never instantiated directly.
|
|
8
|
+
class ChildWorkflowHandle
|
|
9
|
+
# @!visibility private
|
|
10
|
+
def initialize
|
|
11
|
+
raise NotImplementedError, 'Cannot instantiate a child handle directly'
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# @return [String] ID for the workflow.
|
|
15
|
+
def id
|
|
16
|
+
raise NotImplementedError
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# @return [String] Run ID for the workflow.
|
|
20
|
+
def first_execution_run_id
|
|
21
|
+
raise NotImplementedError
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# Wait for the result.
|
|
25
|
+
#
|
|
26
|
+
# @return [Object] Result of the child workflow.
|
|
27
|
+
#
|
|
28
|
+
# @raise [Error::ChildWorkflowError] Workflow failed with +cause+ as the cause.
|
|
29
|
+
def result
|
|
30
|
+
raise NotImplementedError
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Signal the child workflow.
|
|
34
|
+
#
|
|
35
|
+
# @param signal [Workflow::Definition::Signal, Symbol, String] Signal definition or name.
|
|
36
|
+
# @param args [Array<Object>] Signal args.
|
|
37
|
+
# @param cancellation [Cancellation] Cancellation for canceling the signalling.
|
|
38
|
+
def signal(signal, *args, cancellation: Workflow.cancellation)
|
|
39
|
+
raise NotImplementedError
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|