temporalio 1.6.0 → 1.8.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.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +37 -67
  3. data/Gemfile +3 -0
  4. data/README.md +25 -2
  5. data/Rakefile +20 -1
  6. data/ext/Cargo.toml +3 -3
  7. data/lib/temporalio/api/activity/v1/message.rb +1 -1
  8. data/lib/temporalio/api/batch/v1/message.rb +4 -1
  9. data/lib/temporalio/api/command/v1/message.rb +2 -1
  10. data/lib/temporalio/api/common/v1/message.rb +5 -1
  11. data/lib/temporalio/api/enums/v1/activity.rb +1 -1
  12. data/lib/temporalio/api/enums/v1/batch_operation.rb +1 -1
  13. data/lib/temporalio/api/enums/v1/common.rb +2 -1
  14. data/lib/temporalio/api/enums/v1/failed_cause.rb +1 -1
  15. data/lib/temporalio/api/enums/v1/time_skipping.rb +21 -0
  16. data/lib/temporalio/api/errordetails/v1/message.rb +2 -1
  17. data/lib/temporalio/api/history/v1/message.rb +1 -1
  18. data/lib/temporalio/api/namespace/v1/message.rb +1 -1
  19. data/lib/temporalio/api/taskqueue/v1/message.rb +2 -1
  20. data/lib/temporalio/api/worker/v1/message.rb +13 -1
  21. data/lib/temporalio/api/workflow/v1/message.rb +1 -1
  22. data/lib/temporalio/api/workflowservice/v1/request_response.rb +4 -1
  23. data/lib/temporalio/api/workflowservice/v1/service.rb +1 -1
  24. data/lib/temporalio/client/activity_execution.rb +82 -1
  25. data/lib/temporalio/client/activity_execution_options.rb +39 -0
  26. data/lib/temporalio/client/activity_execution_status.rb +1 -0
  27. data/lib/temporalio/client/activity_handle.rb +122 -1
  28. data/lib/temporalio/client/activity_options.rb +113 -0
  29. data/lib/temporalio/client/connection/workflow_service.rb +15 -0
  30. data/lib/temporalio/client/connection.rb +33 -3
  31. data/lib/temporalio/client/interceptor.rb +65 -0
  32. data/lib/temporalio/client/schedule.rb +4 -5
  33. data/lib/temporalio/client/workflow_execution.rb +2 -2
  34. data/lib/temporalio/client/workflow_handle.rb +2 -1
  35. data/lib/temporalio/client.rb +4 -6
  36. data/lib/temporalio/converters/data_converter.rb +1 -0
  37. data/lib/temporalio/converters/failure_converter.rb +7 -4
  38. data/lib/temporalio/internal/bridge/api/common/common.rb +2 -1
  39. data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +1 -1
  40. data/lib/temporalio/internal/bridge/client.rb +3 -1
  41. data/lib/temporalio/internal/bridge/runtime.rb +4 -1
  42. data/lib/temporalio/internal/bridge/worker.rb +3 -1
  43. data/lib/temporalio/internal/client/implementation.rb +54 -2
  44. data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +9 -0
  45. data/lib/temporalio/runtime.rb +25 -7
  46. data/lib/temporalio/scoped_logger.rb +18 -0
  47. data/lib/temporalio/version.rb +1 -1
  48. data/lib/temporalio/worker/activity_executor/fiber.rb +11 -1
  49. data/lib/temporalio/worker/workflow_replayer.rb +2 -0
  50. data/lib/temporalio/worker.rb +24 -4
  51. data/lib/temporalio/workflow.rb +8 -9
  52. data/rbi/temporalio/api/activity/v1/message.rbi +100 -14
  53. data/rbi/temporalio/api/batch/v1/message.rbi +229 -2
  54. data/rbi/temporalio/api/command/v1/message.rbi +22 -2
  55. data/rbi/temporalio/api/common/v1/message.rbi +548 -74
  56. data/rbi/temporalio/api/enums/v1/activity.rbi +1 -0
  57. data/rbi/temporalio/api/enums/v1/batch_operation.rbi +9 -0
  58. data/rbi/temporalio/api/enums/v1/common.rbi +18 -0
  59. data/rbi/temporalio/api/enums/v1/failed_cause.rbi +4 -0
  60. data/rbi/temporalio/api/enums/v1/time_skipping.rbi +22 -0
  61. data/rbi/temporalio/api/errordetails/v1/message.rbi +59 -2
  62. data/rbi/temporalio/api/history/v1/message.rbi +27 -7
  63. data/rbi/temporalio/api/namespace/v1/message.rbi +95 -4
  64. data/rbi/temporalio/api/taskqueue/v1/message.rbi +113 -2
  65. data/rbi/temporalio/api/worker/v1/message.rbi +742 -2
  66. data/rbi/temporalio/api/workflow/v1/message.rbi +22 -2
  67. data/rbi/temporalio/api/workflowservice/v1/request_response.rbi +701 -117
  68. data/rbi/temporalio/api/workflowservice/v1/service_services.rbi +8 -0
  69. data/rbi/temporalio/client/activity_execution.rbi +27 -0
  70. data/rbi/temporalio/client/activity_execution_options.rbi +58 -0
  71. data/rbi/temporalio/client/activity_execution_status.rbi +1 -0
  72. data/rbi/temporalio/client/activity_handle.rbi +43 -2
  73. data/rbi/temporalio/client/activity_options.rbi +49 -0
  74. data/rbi/temporalio/client/connection/workflow_service.rbi +3 -0
  75. data/rbi/temporalio/client/connection.rbi +2 -0
  76. data/rbi/temporalio/client/interceptor.rbi +107 -0
  77. data/rbi/temporalio/converters/failure_converter.rbi +7 -2
  78. data/rbi/temporalio/internal/bridge/api/common/common.rbi +115 -0
  79. data/rbi/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbi +42 -2
  80. data/rbi/temporalio/internal/bridge/runtime.rbi +24 -4
  81. data/rbi/temporalio/internal/bridge/worker.rbi +2 -0
  82. data/rbi/temporalio/runtime.rbi +13 -4
  83. data/rbi/temporalio/scoped_logger.rbi +1 -1
  84. data/rbi/temporalio/worker.rbi +9 -2
  85. data/rbi/temporalio/workflow/future.rbi +1 -1
  86. data/sig/temporalio/api/activity/v1/message.rbs +48 -2
  87. data/sig/temporalio/api/batch/v1/message.rbs +86 -0
  88. data/sig/temporalio/api/command/v1/message.rbs +10 -0
  89. data/sig/temporalio/api/common/v1/message.rbs +240 -39
  90. data/sig/temporalio/api/enums/v1/activity.rbs +9 -5
  91. data/sig/temporalio/api/enums/v1/batch_operation.rbs +33 -3
  92. data/sig/temporalio/api/enums/v1/common.rbs +23 -0
  93. data/sig/temporalio/api/enums/v1/failed_cause.rbs +18 -6
  94. data/sig/temporalio/api/enums/v1/time_skipping.rbs +58 -0
  95. data/sig/temporalio/api/errordetails/v1/message.rbs +19 -0
  96. data/sig/temporalio/api/history/v1/message.rbs +13 -3
  97. data/sig/temporalio/api/namespace/v1/message.rbs +43 -0
  98. data/sig/temporalio/api/taskqueue/v1/message.rbs +44 -0
  99. data/sig/temporalio/api/worker/v1/message.rbs +410 -0
  100. data/sig/temporalio/api/workflow/v1/message.rbs +10 -0
  101. data/sig/temporalio/api/workflowservice/v1/request_response.rbs +311 -40
  102. data/sig/temporalio/client/activity_execution.rbs +10 -0
  103. data/sig/temporalio/client/activity_execution_options.rbs +27 -0
  104. data/sig/temporalio/client/activity_execution_status.rbs +1 -0
  105. data/sig/temporalio/client/activity_handle.rbs +23 -1
  106. data/sig/temporalio/client/activity_options.rbs +30 -0
  107. data/sig/temporalio/client/connection/workflow_service.rbs +4 -0
  108. data/sig/temporalio/client/connection.rbs +14 -1
  109. data/sig/temporalio/client/interceptor.rbs +62 -0
  110. data/sig/temporalio/converters/failure_converter.rbs +4 -1
  111. data/sig/temporalio/internal/bridge/api/common/common.rbs +50 -0
  112. data/sig/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbs +20 -0
  113. data/sig/temporalio/internal/bridge/client.rbs +5 -1
  114. data/sig/temporalio/internal/bridge/runtime.rbs +9 -3
  115. data/sig/temporalio/internal/bridge/worker.rbs +5 -1
  116. data/sig/temporalio/internal/client/implementation.rbs +7 -0
  117. data/sig/temporalio/runtime.rbs +14 -3
  118. data/sig/temporalio/scoped_logger.rbs +1 -1
  119. data/sig/temporalio/worker.rbs +8 -2
  120. metadata +10 -1
@@ -9,6 +9,7 @@ module Temporalio
9
9
  def activity_run_id: -> String?
10
10
  def activity_type: -> String
11
11
  def schedule_time: -> Time?
12
+ def execution_time: -> Time?
12
13
  def close_time: -> Time?
13
14
  def status: -> ActivityExecutionStatus::enum
14
15
  def search_attributes: -> SearchAttributes?
@@ -25,12 +26,21 @@ module Temporalio
25
26
  def schedule_to_start_timeout: -> Float?
26
27
  def start_to_close_timeout: -> Float?
27
28
  def heartbeat_timeout: -> Float?
29
+ def start_delay: -> Float?
28
30
  def has_heartbeat_details?: -> bool
31
+ def has_last_failure?: -> bool
32
+ def has_input?: -> bool
33
+ def input: (?hints: Array[Object]?) -> Array[Object?]
34
+ def has_result?: -> bool
35
+ def result: (?result_hint: Object?) -> Object?
36
+ def failure: -> Error::Failure?
29
37
  def heartbeat_details: (?hints: Array[Object]?) -> Array[Object?]
30
38
  def retry_policy: -> RetryPolicy
31
39
  def last_heartbeat_time: -> Time?
32
40
  def last_started_time: -> Time?
33
41
  def attempt: -> Integer
42
+
43
+ def total_heartbeat_count: -> Integer
34
44
  def last_failure: -> Error::Failure?
35
45
  def expiration_time: -> Time?
36
46
  def last_worker_identity: -> String?
@@ -0,0 +1,27 @@
1
+ module Temporalio
2
+ class Client
3
+ class ActivityExecutionOptions
4
+ attr_reader task_queue: String?
5
+ attr_reader schedule_to_close_timeout: Float?
6
+ attr_reader schedule_to_start_timeout: Float?
7
+ attr_reader start_to_close_timeout: Float?
8
+ attr_reader heartbeat_timeout: Float?
9
+ attr_reader retry_policy: RetryPolicy?
10
+ attr_reader priority: Priority
11
+ attr_reader start_delay: Float?
12
+
13
+ def self._from_proto: (untyped options) -> ActivityExecutionOptions
14
+
15
+ def initialize: (
16
+ task_queue: String?,
17
+ schedule_to_close_timeout: Float?,
18
+ schedule_to_start_timeout: Float?,
19
+ start_to_close_timeout: Float?,
20
+ heartbeat_timeout: Float?,
21
+ retry_policy: RetryPolicy?,
22
+ priority: Priority,
23
+ start_delay: Float?
24
+ ) -> void
25
+ end
26
+ end
27
+ end
@@ -10,6 +10,7 @@ module Temporalio
10
10
  CANCELED: enum
11
11
  TERMINATED: enum
12
12
  TIMED_OUT: enum
13
+ PAUSED: enum
13
14
  end
14
15
  end
15
16
  end
@@ -1,6 +1,8 @@
1
1
  module Temporalio
2
2
  class Client
3
3
  class ActivityHandle
4
+ UPDATABLE_OPTION_PATHS: Hash[Symbol, String]
5
+
4
6
  attr_reader id: String
5
7
  attr_reader run_id: String?
6
8
  attr_reader result_hint: Object?
@@ -14,12 +16,32 @@ module Temporalio
14
16
 
15
17
  def result: (?result_hint: Object?, ?rpc_options: RPCOptions?) -> Object?
16
18
 
17
- def describe: (?rpc_options: RPCOptions?) -> ActivityExecution::Description
19
+ def describe: (
20
+ ?include_input: bool,
21
+ ?include_outcome: bool,
22
+ ?include_heartbeat_details: bool,
23
+ ?include_last_failure: bool,
24
+ ?rpc_options: RPCOptions?
25
+ ) -> ActivityExecution::Description
18
26
 
19
27
  def cancel: (?String? reason, ?rpc_options: RPCOptions?) -> void
20
28
 
21
29
  def terminate: (?String? reason, ?rpc_options: RPCOptions?) -> void
22
30
 
31
+ def pause: (?String? reason, ?rpc_options: RPCOptions?) -> void
32
+
33
+ def unpause: (
34
+ ?reason: String?,
35
+ ?jitter: Float?,
36
+ ?rpc_options: RPCOptions?
37
+ ) -> void
38
+
39
+ def update_options: (
40
+ *ActivityOptions::Update updates,
41
+ ?restore_original: bool,
42
+ ?rpc_options: RPCOptions?
43
+ ) -> ActivityExecutionOptions
44
+
23
45
  private def _process_outcome: (Api::Activity::V1::ActivityExecutionOutcome? outcome, Object? hint) -> Object?
24
46
  end
25
47
  end
@@ -0,0 +1,30 @@
1
+ module Temporalio
2
+ class Client
3
+ module ActivityOptions
4
+ class Key
5
+ attr_reader name: String
6
+
7
+ def initialize: (String name) { (untyped proto, untyped value) -> void } -> void
8
+ def value_set: (untyped value) -> Update
9
+ def value_unset: () -> Update
10
+ def _apply: (untyped proto, untyped value) -> void
11
+ end
12
+
13
+ class Update
14
+ attr_reader key: Key
15
+ attr_reader value: untyped?
16
+
17
+ def initialize: (Key key, untyped? value) -> void
18
+ end
19
+
20
+ TASK_QUEUE: Key
21
+ SCHEDULE_TO_CLOSE_TIMEOUT: Key
22
+ SCHEDULE_TO_START_TIMEOUT: Key
23
+ START_TO_CLOSE_TIMEOUT: Key
24
+ HEARTBEAT_TIMEOUT: Key
25
+ START_DELAY: Key
26
+ RETRY_POLICY: Key
27
+ PRIORITY: Key
28
+ end
29
+ end
30
+ end
@@ -493,6 +493,10 @@ module Temporalio
493
493
  Temporalio::Api::WorkflowService::V1::DeleteNexusOperationExecutionRequest request,
494
494
  ?rpc_options: RPCOptions?
495
495
  ) -> Temporalio::Api::WorkflowService::V1::DeleteNexusOperationExecutionResponse
496
+ def poll_workflow_execution_time_skipping: (
497
+ Temporalio::Api::WorkflowService::V1::PollWorkflowExecutionTimeSkippingRequest request,
498
+ ?rpc_options: RPCOptions?
499
+ ) -> Temporalio::Api::WorkflowService::V1::PollWorkflowExecutionTimeSkippingResponse
496
500
  end
497
501
  end
498
502
  end
@@ -14,6 +14,7 @@ module Temporalio
14
14
  attr_reader lazy_connect: bool
15
15
  attr_reader dns_load_balancing: DnsLoadBalancingOptions?
16
16
  attr_reader grpc_compression: GrpcCompressionOptions::Gzip | GrpcCompressionOptions::None
17
+ attr_reader payload_limits: PayloadLimitsOptions
17
18
 
18
19
  def initialize: (
19
20
  target_host: String,
@@ -27,7 +28,8 @@ module Temporalio
27
28
  runtime: Runtime,
28
29
  lazy_connect: bool,
29
30
  dns_load_balancing: DnsLoadBalancingOptions?,
30
- grpc_compression: GrpcCompressionOptions::Gzip | GrpcCompressionOptions::None
31
+ grpc_compression: GrpcCompressionOptions::Gzip | GrpcCompressionOptions::None,
32
+ payload_limits: PayloadLimitsOptions
31
33
  ) -> void
32
34
 
33
35
  def to_h: -> Hash[Symbol, untyped]
@@ -107,6 +109,16 @@ module Temporalio
107
109
  end
108
110
  end
109
111
 
112
+ class PayloadLimitsOptions
113
+ attr_reader payloads_warn_size: Integer?
114
+ attr_reader memo_warn_size: Integer?
115
+
116
+ def initialize: (
117
+ ?payloads_warn_size: Integer?,
118
+ ?memo_warn_size: Integer?
119
+ ) -> void
120
+ end
121
+
110
122
  attr_reader options: Options
111
123
 
112
124
  attr_reader workflow_service: WorkflowService
@@ -126,6 +138,7 @@ module Temporalio
126
138
  ?lazy_connect: bool,
127
139
  ?dns_load_balancing: DnsLoadBalancingOptions?,
128
140
  ?grpc_compression: GrpcCompressionOptions::Gzip | GrpcCompressionOptions::None,
141
+ ?payload_limits: PayloadLimitsOptions,
129
142
  ?around_connect: nil | ^(Options) { (Options) -> void } -> void
130
143
  ) -> void
131
144
 
@@ -481,11 +481,19 @@ module Temporalio
481
481
  class DescribeActivityInput
482
482
  attr_reader activity_id: String
483
483
  attr_reader activity_run_id: String?
484
+ attr_reader include_input: bool
485
+ attr_reader include_outcome: bool
486
+ attr_reader include_heartbeat_details: bool
487
+ attr_reader include_last_failure: bool
484
488
  attr_reader rpc_options: RPCOptions?
485
489
 
486
490
  def initialize: (
487
491
  activity_id: String,
488
492
  activity_run_id: String?,
493
+ include_input: bool,
494
+ include_outcome: bool,
495
+ include_heartbeat_details: bool,
496
+ include_last_failure: bool,
489
497
  rpc_options: RPCOptions?
490
498
  ) -> void
491
499
  end
@@ -518,6 +526,54 @@ module Temporalio
518
526
  ) -> void
519
527
  end
520
528
 
529
+ class PauseActivityInput
530
+ attr_reader activity_id: String
531
+ attr_reader activity_run_id: String?
532
+ attr_reader reason: String?
533
+ attr_reader rpc_options: RPCOptions?
534
+
535
+ def initialize: (
536
+ activity_id: String,
537
+ activity_run_id: String?,
538
+ reason: String?,
539
+ rpc_options: RPCOptions?
540
+ ) -> void
541
+ end
542
+
543
+ class UnpauseActivityInput
544
+ attr_reader activity_id: String
545
+ attr_reader activity_run_id: String?
546
+ attr_reader reason: String?
547
+ attr_reader jitter: Float?
548
+ attr_reader rpc_options: RPCOptions?
549
+
550
+ def initialize: (
551
+ activity_id: String,
552
+ activity_run_id: String?,
553
+ reason: String?,
554
+ jitter: Float?,
555
+ rpc_options: RPCOptions?
556
+ ) -> void
557
+ end
558
+
559
+ class UpdateActivityOptionsInput
560
+ attr_reader activity_id: String
561
+ attr_reader activity_run_id: String?
562
+ attr_reader activity_options: untyped
563
+ attr_reader update_mask: untyped
564
+ attr_reader restore_original: bool
565
+ attr_reader rpc_options: RPCOptions?
566
+
567
+ def initialize: (
568
+ activity_id: String,
569
+ activity_run_id: String?,
570
+ activity_options: untyped,
571
+ update_mask: untyped,
572
+ restore_original: bool,
573
+ rpc_options: RPCOptions?
574
+ ) -> void
575
+ end
576
+
521
577
  class ListActivitiesInput
522
578
  attr_reader query: String
523
579
  attr_reader rpc_options: RPCOptions?
@@ -611,6 +667,12 @@ module Temporalio
611
667
 
612
668
  def terminate_activity: (TerminateActivityInput input) -> void
613
669
 
670
+ def pause_activity: (PauseActivityInput input) -> void
671
+
672
+ def unpause_activity: (UnpauseActivityInput input) -> void
673
+
674
+ def update_activity_options: (UpdateActivityOptionsInput input) -> untyped
675
+
614
676
  def list_activities: (ListActivitiesInput input) -> Enumerator[ActivityExecution, ActivityExecution]
615
677
 
616
678
  def count_activities: (CountActivitiesInput input) -> ActivityExecutionCount
@@ -3,7 +3,10 @@ module Temporalio
3
3
  class FailureConverter
4
4
  def self.default: -> FailureConverter
5
5
 
6
- def initialize: (?encode_common_attributes: bool) -> void
6
+ def initialize: (
7
+ ?encode_common_attributes: bool,
8
+ ?process_common_attributes: ^(Hash[Symbol, String?]) -> untyped
9
+ ) -> void
7
10
 
8
11
  def to_failure: (Exception error, DataConverter | PayloadConverter converter) -> Api::Failure::V1::Failure
9
12
  def from_failure: (Api::Failure::V1::Failure failure, DataConverter | PayloadConverter converter) -> Exception
@@ -78,6 +78,56 @@ module Temporalio
78
78
  | ("build_id" name, (::String | ::Symbol) value) -> void
79
79
  end
80
80
 
81
+ # Metrics for a set of external payload storage operations (all uploads and downloads)
82
+ # performed while processing a task, so core can emit unified logging and metrics.
83
+ class ExternalStorageMetrics < ::Google::Protobuf::AbstractMessage
84
+
85
+ # Number of payloads stored or retrieved externally.
86
+ attr_reader payload_count(): ::Integer
87
+ attr_writer payload_count(): ::Integer | ::Float
88
+ def clear_payload_count: () -> void
89
+
90
+ # Total size in bytes of the externally stored or retrieved payloads.
91
+ attr_reader total_size_bytes(): ::Integer
92
+ attr_writer total_size_bytes(): ::Integer | ::Float
93
+ def clear_total_size_bytes: () -> void
94
+
95
+ # Wall-clock time spent on the external storage operations.
96
+ attr_reader total_duration(): ::Google::Protobuf::Duration?
97
+ attr_writer total_duration(): (::Google::Protobuf::Duration | ::int)?
98
+ def has_total_duration?: () -> bool
99
+ def clear_total_duration: () -> void
100
+
101
+ # Names of the drivers that participated in the operations.
102
+ attr_accessor driver_names(): ::Google::Protobuf::RepeatedField
103
+ def clear_driver_names: () -> void
104
+
105
+ type init_map = {
106
+ payload_count: (::Integer | ::Float)?,
107
+ "payload_count" => (::Integer | ::Float)?,
108
+ total_size_bytes: (::Integer | ::Float)?,
109
+ "total_size_bytes" => (::Integer | ::Float)?,
110
+ total_duration: (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
111
+ "total_duration" => (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
112
+ driver_names: ::Array[::String | ::Symbol]?,
113
+ "driver_names" => ::Array[::String | ::Symbol]?,
114
+ }
115
+
116
+ def initialize: (?init_map initial_value) -> void
117
+
118
+ def []:
119
+ ("payload_count" name) -> ::Integer
120
+ | ("total_size_bytes" name) -> ::Integer
121
+ | ("total_duration" name) -> ::Google::Protobuf::Duration?
122
+ | ("driver_names" name) -> (::Google::Protobuf::RepeatedField)
123
+
124
+ def []=:
125
+ ("payload_count" name, (::Integer | ::Float) value) -> void
126
+ | ("total_size_bytes" name, (::Integer | ::Float) value) -> void
127
+ | ("total_duration" name, ((::Google::Protobuf::Duration | ::int)?) value) -> void
128
+ | ("driver_names" name, (::Google::Protobuf::RepeatedField) value) -> void
129
+ end
130
+
81
131
  # An indication of user's intent concerning what Build ID versioning approach should be used for
82
132
  # a specific command
83
133
  module VersioningIntent
@@ -26,6 +26,18 @@ module Temporalio
26
26
  def has_failed?: () -> bool
27
27
  def clear_failed: () -> void
28
28
 
29
+ # Metrics for external payload storage downloads (retrievals) performed while processing
30
+ # this activation. Only set when external storage retrieved payloads.
31
+ attr_accessor payload_download_metrics(): ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics?
32
+ def has_payload_download_metrics?: () -> bool
33
+ def clear_payload_download_metrics: () -> void
34
+
35
+ # Metrics for external payload storage uploads (stores) performed while processing this
36
+ # activation. Only set when external storage stored payloads.
37
+ attr_accessor payload_upload_metrics(): ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics?
38
+ def has_payload_upload_metrics?: () -> bool
39
+ def clear_payload_upload_metrics: () -> void
40
+
29
41
  attr_reader status(): (::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Success | ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Failure)?
30
42
  def has_status?: () -> bool
31
43
  def clear_status: () -> void
@@ -37,6 +49,10 @@ module Temporalio
37
49
  "successful" => (::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Success | ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Success::init_map)?,
38
50
  failed: (::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Failure | ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Failure::init_map)?,
39
51
  "failed" => (::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Failure | ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Failure::init_map)?,
52
+ payload_download_metrics: (::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics | ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics::init_map)?,
53
+ "payload_download_metrics" => (::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics | ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics::init_map)?,
54
+ payload_upload_metrics: (::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics | ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics::init_map)?,
55
+ "payload_upload_metrics" => (::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics | ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics::init_map)?,
40
56
  }
41
57
 
42
58
  def initialize: (?init_map initial_value) -> void
@@ -45,11 +61,15 @@ module Temporalio
45
61
  ("run_id" name) -> ::String
46
62
  | ("successful" name) -> ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Success?
47
63
  | ("failed" name) -> ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Failure?
64
+ | ("payload_download_metrics" name) -> ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics?
65
+ | ("payload_upload_metrics" name) -> ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics?
48
66
 
49
67
  def []=:
50
68
  ("run_id" name, (::String | ::Symbol) value) -> void
51
69
  | ("successful" name, ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Success? value) -> void
52
70
  | ("failed" name, ::Temporalio::Internal::Bridge::Api::WorkflowCompletion::Failure? value) -> void
71
+ | ("payload_download_metrics" name, ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics? value) -> void
72
+ | ("payload_upload_metrics" name, ::Temporalio::Internal::Bridge::Api::Common::ExternalStorageMetrics? value) -> void
53
73
  end
54
74
 
55
75
  # Successful workflow activation with a list of commands generated by the workflow execution
@@ -15,6 +15,8 @@ module Temporalio
15
15
  attr_accessor http_connect_proxy: HTTPConnectProxyOptions?
16
16
  attr_accessor dns_load_balancing: DnsLoadBalancingOptions?
17
17
  attr_accessor grpc_compression: GrpcCompressionOptions?
18
+ attr_accessor payloads_warn_size: Integer?
19
+ attr_accessor memo_warn_size: Integer?
18
20
 
19
21
  def initialize: (
20
22
  target_host: String,
@@ -28,7 +30,9 @@ module Temporalio
28
30
  ?keep_alive: KeepAliveOptions?,
29
31
  ?http_connect_proxy: HTTPConnectProxyOptions?,
30
32
  ?dns_load_balancing: DnsLoadBalancingOptions?,
31
- ?grpc_compression: GrpcCompressionOptions?
33
+ ?grpc_compression: GrpcCompressionOptions?,
34
+ ?payloads_warn_size: Integer?,
35
+ ?memo_warn_size: Integer?
32
36
  ) -> void
33
37
  end
34
38
 
@@ -5,10 +5,14 @@ module Temporalio
5
5
  class Options
6
6
  attr_accessor telemetry: TelemetryOptions
7
7
  attr_accessor worker_heartbeat_interval: Float?
8
+ attr_accessor disable_environment_info: bool
9
+ attr_accessor runtime_version: String?
8
10
 
9
11
  def initialize: (
10
12
  telemetry: TelemetryOptions,
11
- worker_heartbeat_interval: Float?
13
+ worker_heartbeat_interval: Float?,
14
+ disable_environment_info: bool,
15
+ runtime_version: String?
12
16
  ) -> void
13
17
  end
14
18
 
@@ -24,9 +28,11 @@ module Temporalio
24
28
 
25
29
  class LoggingOptions
26
30
  attr_accessor log_filter: String?
31
+ attr_accessor log_format: String?
27
32
 
28
33
  def initialize: (
29
- log_filter: String?
34
+ log_filter: String?,
35
+ log_format: String?
30
36
  ) -> void
31
37
  end
32
38
 
@@ -94,4 +100,4 @@ module Temporalio
94
100
  end
95
101
  end
96
102
  end
97
- end
103
+ end
@@ -20,11 +20,13 @@ module Temporalio
20
20
  attr_accessor default_heartbeat_throttle_interval: Float
21
21
  attr_accessor max_worker_activities_per_second: Float?
22
22
  attr_accessor max_task_queue_activities_per_second: Float?
23
+ attr_accessor max_eager_activity_reservations_per_workflow_task: Integer
23
24
  attr_accessor graceful_shutdown_period: Float
24
25
  attr_accessor nondeterminism_as_workflow_fail: bool
25
26
  attr_accessor nondeterminism_as_workflow_fail_for_types: Array[String]
26
27
  attr_accessor deployment_options: DeploymentOptions?
27
28
  attr_accessor plugins: Array[String]
29
+ attr_accessor disable_payload_error_limit: bool
28
30
 
29
31
  def initialize: (
30
32
  namespace: String,
@@ -44,11 +46,13 @@ module Temporalio
44
46
  default_heartbeat_throttle_interval: Float,
45
47
  max_worker_activities_per_second: Float?,
46
48
  max_task_queue_activities_per_second: Float?,
49
+ max_eager_activity_reservations_per_workflow_task: Integer,
47
50
  graceful_shutdown_period: Float,
48
51
  nondeterminism_as_workflow_fail: bool,
49
52
  nondeterminism_as_workflow_fail_for_types: Array[String],
50
53
  deployment_options: DeploymentOptions?,
51
- plugins: Array[String]
54
+ plugins: Array[String],
55
+ disable_payload_error_limit: bool
52
56
  ) -> void
53
57
  end
54
58
 
@@ -22,6 +22,13 @@ module Temporalio
22
22
 
23
23
  def terminate_activity: (Temporalio::Client::Interceptor::TerminateActivityInput input) -> void
24
24
 
25
+ def pause_activity: (Temporalio::Client::Interceptor::PauseActivityInput input) -> void
26
+
27
+ def unpause_activity: (Temporalio::Client::Interceptor::UnpauseActivityInput input) -> void
28
+
29
+
30
+ def update_activity_options: (Temporalio::Client::Interceptor::UpdateActivityOptionsInput input) -> untyped
31
+
25
32
  def list_activities: (Temporalio::Client::Interceptor::ListActivitiesInput input) -> Enumerator[Temporalio::Client::ActivityExecution, Temporalio::Client::ActivityExecution]
26
33
 
27
34
  def count_activities: (Temporalio::Client::Interceptor::CountActivitiesInput input) -> Temporalio::Client::ActivityExecutionCount
@@ -14,14 +14,24 @@ module Temporalio
14
14
 
15
15
  class LoggingOptions
16
16
  attr_reader log_filter: LoggingFilterOptions | String
17
+ attr_reader log_format: ConsoleLogFormat::enum?
17
18
 
18
19
  def initialize: (
19
- ?log_filter: LoggingFilterOptions | String
20
+ ?log_filter: LoggingFilterOptions | String,
21
+ ?log_format: ConsoleLogFormat::enum?
20
22
  ) -> void
21
23
 
22
24
  def _to_bridge: -> Internal::Bridge::Runtime::LoggingOptions
23
25
  end
24
26
 
27
+ module ConsoleLogFormat
28
+ COMPACT: :compact
29
+ PRETTY: :pretty
30
+ JSON: :json
31
+
32
+ type enum = :compact | :pretty | :json
33
+ end
34
+
25
35
  type logging_filter_level = 'TRACE' | 'DEBUG' | 'INFO' | 'WARN' | 'ERROR'
26
36
 
27
37
  class LoggingFilterOptions
@@ -110,9 +120,10 @@ module Temporalio
110
120
 
111
121
  def initialize: (
112
122
  ?telemetry: TelemetryOptions,
113
- ?worker_heartbeat_interval: Float?
123
+ ?worker_heartbeat_interval: Float?,
124
+ ?disable_environment_info: bool
114
125
  ) -> void
115
126
 
116
127
  def _core_runtime: -> Internal::Bridge::Runtime
117
128
  end
118
- end
129
+ end
@@ -3,7 +3,7 @@ module Temporalio
3
3
  attr_accessor scoped_values_getter: Proc?
4
4
  attr_accessor disable_scoped_values: bool
5
5
 
6
- def initialize: (Logger) -> void
6
+ def initialize: (Object) -> void
7
7
 
8
8
  class LogMessage
9
9
  attr_reader message: Object
@@ -30,6 +30,7 @@ module Temporalio
30
30
  attr_reader default_heartbeat_throttle_interval: Float
31
31
  attr_reader max_activities_per_second: Float?
32
32
  attr_reader max_task_queue_activities_per_second: Float?
33
+ attr_reader max_eager_activity_reservations_per_workflow_task: Integer
33
34
  attr_reader graceful_shutdown_period: Float
34
35
  attr_reader disable_eager_activity_execution: bool
35
36
  attr_reader illegal_workflow_calls: Hash[String, :all | Array[Symbol | IllegalWorkflowCallValidator] | IllegalWorkflowCallValidator]
@@ -41,6 +42,7 @@ module Temporalio
41
42
  attr_reader deployment_options: Worker::DeploymentOptions
42
43
  attr_reader patch_activation_callback: Proc?
43
44
  attr_reader debug_mode: bool
45
+ attr_reader disable_payload_error_limit: bool
44
46
 
45
47
  def initialize: (
46
48
  client: Client,
@@ -64,6 +66,7 @@ module Temporalio
64
66
  default_heartbeat_throttle_interval: Float,
65
67
  max_activities_per_second: Float?,
66
68
  max_task_queue_activities_per_second: Float?,
69
+ max_eager_activity_reservations_per_workflow_task: Integer,
67
70
  graceful_shutdown_period: Float,
68
71
  disable_eager_activity_execution: bool,
69
72
  illegal_workflow_calls: Hash[String, :all | Array[Symbol | IllegalWorkflowCallValidator] | IllegalWorkflowCallValidator],
@@ -74,7 +77,8 @@ module Temporalio
74
77
  activity_task_poller_behavior: PollerBehavior,
75
78
  deployment_options: Worker::DeploymentOptions,
76
79
  patch_activation_callback: Proc?,
77
- debug_mode: bool
80
+ debug_mode: bool,
81
+ disable_payload_error_limit: bool
78
82
  ) -> void
79
83
 
80
84
  def with: (**Object kwargs) -> Options
@@ -128,6 +132,7 @@ module Temporalio
128
132
  ?default_heartbeat_throttle_interval: Float,
129
133
  ?max_activities_per_second: Float?,
130
134
  ?max_task_queue_activities_per_second: Float?,
135
+ ?max_eager_activity_reservations_per_workflow_task: Integer,
131
136
  ?graceful_shutdown_period: Float,
132
137
  ?disable_eager_activity_execution: bool,
133
138
  ?illegal_workflow_calls: Hash[String, :all | Array[Symbol | IllegalWorkflowCallValidator] | IllegalWorkflowCallValidator],
@@ -138,7 +143,8 @@ module Temporalio
138
143
  ?activity_task_poller_behavior: PollerBehavior,
139
144
  ?deployment_options: Worker::DeploymentOptions,
140
145
  ?patch_activation_callback: Proc?,
141
- ?debug_mode: bool
146
+ ?debug_mode: bool,
147
+ ?disable_payload_error_limit: bool
142
148
  ) -> void
143
149
 
144
150
  def _initialize_from_options: -> void
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: temporalio
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Temporal Technologies Inc
@@ -98,6 +98,7 @@ files:
98
98
  - lib/temporalio/api/enums/v1/reset.rb
99
99
  - lib/temporalio/api/enums/v1/schedule.rb
100
100
  - lib/temporalio/api/enums/v1/task_queue.rb
101
+ - lib/temporalio/api/enums/v1/time_skipping.rb
101
102
  - lib/temporalio/api/enums/v1/update.rb
102
103
  - lib/temporalio/api/enums/v1/workflow.rb
103
104
  - lib/temporalio/api/errordetails/v1/message.rb
@@ -142,9 +143,11 @@ files:
142
143
  - lib/temporalio/client.rb
143
144
  - lib/temporalio/client/activity_execution.rb
144
145
  - lib/temporalio/client/activity_execution_count.rb
146
+ - lib/temporalio/client/activity_execution_options.rb
145
147
  - lib/temporalio/client/activity_execution_status.rb
146
148
  - lib/temporalio/client/activity_handle.rb
147
149
  - lib/temporalio/client/activity_id_reference.rb
150
+ - lib/temporalio/client/activity_options.rb
148
151
  - lib/temporalio/client/async_activity_handle.rb
149
152
  - lib/temporalio/client/connection.rb
150
153
  - lib/temporalio/client/connection/cloud_service.rb
@@ -315,6 +318,7 @@ files:
315
318
  - rbi/temporalio/api/enums/v1/reset.rbi
316
319
  - rbi/temporalio/api/enums/v1/schedule.rbi
317
320
  - rbi/temporalio/api/enums/v1/task_queue.rbi
321
+ - rbi/temporalio/api/enums/v1/time_skipping.rbi
318
322
  - rbi/temporalio/api/enums/v1/update.rbi
319
323
  - rbi/temporalio/api/enums/v1/workflow.rbi
320
324
  - rbi/temporalio/api/errordetails/v1/message.rbi
@@ -362,9 +366,11 @@ files:
362
366
  - rbi/temporalio/client.rbi
363
367
  - rbi/temporalio/client/activity_execution.rbi
364
368
  - rbi/temporalio/client/activity_execution_count.rbi
369
+ - rbi/temporalio/client/activity_execution_options.rbi
365
370
  - rbi/temporalio/client/activity_execution_status.rbi
366
371
  - rbi/temporalio/client/activity_handle.rbi
367
372
  - rbi/temporalio/client/activity_id_reference.rbi
373
+ - rbi/temporalio/client/activity_options.rbi
368
374
  - rbi/temporalio/client/async_activity_handle.rbi
369
375
  - rbi/temporalio/client/connection.rbi
370
376
  - rbi/temporalio/client/connection/cloud_service.rbi
@@ -536,6 +542,7 @@ files:
536
542
  - sig/temporalio/api/enums/v1/reset.rbs
537
543
  - sig/temporalio/api/enums/v1/schedule.rbs
538
544
  - sig/temporalio/api/enums/v1/task_queue.rbs
545
+ - sig/temporalio/api/enums/v1/time_skipping.rbs
539
546
  - sig/temporalio/api/enums/v1/update.rbs
540
547
  - sig/temporalio/api/enums/v1/workflow.rbs
541
548
  - sig/temporalio/api/errordetails/v1/message.rbs
@@ -580,9 +587,11 @@ files:
580
587
  - sig/temporalio/client.rbs
581
588
  - sig/temporalio/client/activity_execution.rbs
582
589
  - sig/temporalio/client/activity_execution_count.rbs
590
+ - sig/temporalio/client/activity_execution_options.rbs
583
591
  - sig/temporalio/client/activity_execution_status.rbs
584
592
  - sig/temporalio/client/activity_handle.rbs
585
593
  - sig/temporalio/client/activity_id_reference.rbs
594
+ - sig/temporalio/client/activity_options.rbs
586
595
  - sig/temporalio/client/async_activity_handle.rbs
587
596
  - sig/temporalio/client/connection.rbs
588
597
  - sig/temporalio/client/connection/cloud_service.rbs