temporalio 0.0.2 → 0.1.1

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 (320) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +25 -23
  3. data/bridge/Cargo.lock +185 -76
  4. data/bridge/Cargo.toml +6 -4
  5. data/bridge/sdk-core/README.md +19 -6
  6. data/bridge/sdk-core/client/src/lib.rs +215 -39
  7. data/bridge/sdk-core/client/src/metrics.rs +17 -8
  8. data/bridge/sdk-core/client/src/raw.rs +4 -4
  9. data/bridge/sdk-core/client/src/retry.rs +32 -20
  10. data/bridge/sdk-core/core/Cargo.toml +22 -9
  11. data/bridge/sdk-core/core/src/abstractions.rs +203 -14
  12. data/bridge/sdk-core/core/src/core_tests/activity_tasks.rs +76 -41
  13. data/bridge/sdk-core/core/src/core_tests/determinism.rs +165 -2
  14. data/bridge/sdk-core/core/src/core_tests/local_activities.rs +204 -83
  15. data/bridge/sdk-core/core/src/core_tests/queries.rs +3 -4
  16. data/bridge/sdk-core/core/src/core_tests/workers.rs +1 -3
  17. data/bridge/sdk-core/core/src/core_tests/workflow_tasks.rs +397 -54
  18. data/bridge/sdk-core/core/src/ephemeral_server/mod.rs +106 -12
  19. data/bridge/sdk-core/core/src/internal_flags.rs +136 -0
  20. data/bridge/sdk-core/core/src/lib.rs +16 -9
  21. data/bridge/sdk-core/core/src/telemetry/log_export.rs +1 -1
  22. data/bridge/sdk-core/core/src/telemetry/metrics.rs +69 -35
  23. data/bridge/sdk-core/core/src/telemetry/mod.rs +29 -13
  24. data/bridge/sdk-core/core/src/telemetry/prometheus_server.rs +17 -12
  25. data/bridge/sdk-core/core/src/test_help/mod.rs +62 -12
  26. data/bridge/sdk-core/core/src/worker/activities/activity_heartbeat_manager.rs +112 -156
  27. data/bridge/sdk-core/core/src/worker/activities/activity_task_poller_stream.rs +89 -0
  28. data/bridge/sdk-core/core/src/worker/activities/local_activities.rs +352 -122
  29. data/bridge/sdk-core/core/src/worker/activities.rs +233 -157
  30. data/bridge/sdk-core/core/src/worker/client/mocks.rs +22 -2
  31. data/bridge/sdk-core/core/src/worker/client.rs +18 -2
  32. data/bridge/sdk-core/core/src/worker/mod.rs +165 -58
  33. data/bridge/sdk-core/core/src/worker/workflow/bridge.rs +1 -3
  34. data/bridge/sdk-core/core/src/worker/workflow/driven_workflow.rs +3 -5
  35. data/bridge/sdk-core/core/src/worker/workflow/history_update.rs +856 -277
  36. data/bridge/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +100 -43
  37. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +7 -7
  38. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +5 -4
  39. data/bridge/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +87 -27
  40. data/bridge/sdk-core/core/src/worker/workflow/machines/complete_workflow_state_machine.rs +5 -4
  41. data/bridge/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +5 -4
  42. data/bridge/sdk-core/core/src/worker/workflow/machines/fail_workflow_state_machine.rs +5 -4
  43. data/bridge/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +137 -62
  44. data/bridge/sdk-core/core/src/worker/workflow/machines/mod.rs +25 -17
  45. data/bridge/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs +7 -6
  46. data/bridge/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +103 -152
  47. data/bridge/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +7 -7
  48. data/bridge/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +9 -9
  49. data/bridge/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +2 -2
  50. data/bridge/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +14 -7
  51. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines/local_acts.rs +5 -16
  52. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +201 -121
  53. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_task_state_machine.rs +11 -14
  54. data/bridge/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +30 -15
  55. data/bridge/sdk-core/core/src/worker/workflow/managed_run.rs +1026 -376
  56. data/bridge/sdk-core/core/src/worker/workflow/mod.rs +460 -384
  57. data/bridge/sdk-core/core/src/worker/workflow/run_cache.rs +40 -57
  58. data/bridge/sdk-core/core/src/worker/workflow/wft_extraction.rs +125 -0
  59. data/bridge/sdk-core/core/src/worker/workflow/wft_poller.rs +1 -4
  60. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream/saved_wf_inputs.rs +117 -0
  61. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream/tonic_status_serde.rs +24 -0
  62. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream.rs +448 -718
  63. data/bridge/sdk-core/core-api/Cargo.toml +2 -1
  64. data/bridge/sdk-core/core-api/src/errors.rs +1 -34
  65. data/bridge/sdk-core/core-api/src/lib.rs +6 -2
  66. data/bridge/sdk-core/core-api/src/telemetry.rs +0 -6
  67. data/bridge/sdk-core/core-api/src/worker.rs +14 -1
  68. data/bridge/sdk-core/fsm/rustfsm_procmacro/src/lib.rs +18 -15
  69. data/bridge/sdk-core/fsm/rustfsm_trait/src/lib.rs +8 -3
  70. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-16_history.bin +0 -0
  71. data/bridge/sdk-core/protos/api_upstream/temporal/api/command/v1/message.proto +5 -17
  72. data/bridge/sdk-core/protos/api_upstream/temporal/api/common/v1/message.proto +11 -0
  73. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/command_type.proto +1 -6
  74. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/event_type.proto +6 -6
  75. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/failed_cause.proto +5 -0
  76. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/update.proto +22 -6
  77. data/bridge/sdk-core/protos/api_upstream/temporal/api/history/v1/message.proto +48 -19
  78. data/bridge/sdk-core/protos/api_upstream/temporal/api/namespace/v1/message.proto +2 -0
  79. data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto +3 -0
  80. data/bridge/sdk-core/protos/api_upstream/temporal/api/{enums/v1/interaction_type.proto → protocol/v1/message.proto} +29 -11
  81. data/bridge/sdk-core/protos/api_upstream/temporal/api/sdk/v1/task_complete_metadata.proto +63 -0
  82. data/bridge/sdk-core/protos/api_upstream/temporal/api/update/v1/message.proto +111 -0
  83. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto +59 -28
  84. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/service.proto +2 -2
  85. data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_result/activity_result.proto +1 -0
  86. data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_task/activity_task.proto +1 -0
  87. data/bridge/sdk-core/protos/local/temporal/sdk/core/child_workflow/child_workflow.proto +1 -0
  88. data/bridge/sdk-core/protos/local/temporal/sdk/core/common/common.proto +1 -0
  89. data/bridge/sdk-core/protos/local/temporal/sdk/core/core_interface.proto +1 -0
  90. data/bridge/sdk-core/protos/local/temporal/sdk/core/external_data/external_data.proto +1 -0
  91. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +7 -0
  92. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +1 -0
  93. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_completion/workflow_completion.proto +6 -0
  94. data/bridge/sdk-core/sdk/Cargo.toml +3 -2
  95. data/bridge/sdk-core/sdk/src/lib.rs +87 -20
  96. data/bridge/sdk-core/sdk/src/workflow_future.rs +9 -8
  97. data/bridge/sdk-core/sdk-core-protos/Cargo.toml +5 -2
  98. data/bridge/sdk-core/sdk-core-protos/build.rs +36 -1
  99. data/bridge/sdk-core/sdk-core-protos/src/history_builder.rs +100 -87
  100. data/bridge/sdk-core/sdk-core-protos/src/history_info.rs +5 -1
  101. data/bridge/sdk-core/sdk-core-protos/src/lib.rs +175 -57
  102. data/bridge/sdk-core/sdk-core-protos/src/task_token.rs +12 -2
  103. data/bridge/sdk-core/test-utils/Cargo.toml +3 -1
  104. data/bridge/sdk-core/test-utils/src/canned_histories.rs +106 -296
  105. data/bridge/sdk-core/test-utils/src/histfetch.rs +1 -1
  106. data/bridge/sdk-core/test-utils/src/lib.rs +82 -23
  107. data/bridge/sdk-core/test-utils/src/wf_input_saver.rs +50 -0
  108. data/bridge/sdk-core/test-utils/src/workflows.rs +29 -0
  109. data/bridge/sdk-core/tests/fuzzy_workflow.rs +130 -0
  110. data/bridge/sdk-core/tests/{load_tests.rs → heavy_tests.rs} +125 -51
  111. data/bridge/sdk-core/tests/integ_tests/ephemeral_server_tests.rs +25 -3
  112. data/bridge/sdk-core/tests/integ_tests/heartbeat_tests.rs +5 -3
  113. data/bridge/sdk-core/tests/integ_tests/metrics_tests.rs +218 -16
  114. data/bridge/sdk-core/tests/integ_tests/polling_tests.rs +4 -47
  115. data/bridge/sdk-core/tests/integ_tests/queries_tests.rs +5 -128
  116. data/bridge/sdk-core/tests/integ_tests/visibility_tests.rs +83 -25
  117. data/bridge/sdk-core/tests/integ_tests/workflow_tests/activities.rs +93 -69
  118. data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_external.rs +1 -0
  119. data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_wf.rs +6 -13
  120. data/bridge/sdk-core/tests/integ_tests/workflow_tests/child_workflows.rs +1 -0
  121. data/bridge/sdk-core/tests/integ_tests/workflow_tests/continue_as_new.rs +6 -2
  122. data/bridge/sdk-core/tests/integ_tests/workflow_tests/determinism.rs +3 -10
  123. data/bridge/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs +72 -191
  124. data/bridge/sdk-core/tests/integ_tests/workflow_tests/modify_wf_properties.rs +1 -0
  125. data/bridge/sdk-core/tests/integ_tests/workflow_tests/patches.rs +7 -28
  126. data/bridge/sdk-core/tests/integ_tests/workflow_tests/replay.rs +12 -7
  127. data/bridge/sdk-core/tests/integ_tests/workflow_tests/resets.rs +1 -0
  128. data/bridge/sdk-core/tests/integ_tests/workflow_tests/signals.rs +18 -14
  129. data/bridge/sdk-core/tests/integ_tests/workflow_tests/stickyness.rs +6 -20
  130. data/bridge/sdk-core/tests/integ_tests/workflow_tests/timers.rs +10 -21
  131. data/bridge/sdk-core/tests/integ_tests/workflow_tests/upsert_search_attrs.rs +6 -4
  132. data/bridge/sdk-core/tests/integ_tests/workflow_tests.rs +10 -11
  133. data/bridge/sdk-core/tests/main.rs +3 -13
  134. data/bridge/sdk-core/tests/runner.rs +75 -36
  135. data/bridge/sdk-core/tests/wf_input_replay.rs +32 -0
  136. data/bridge/src/connection.rs +41 -25
  137. data/bridge/src/lib.rs +269 -14
  138. data/bridge/src/runtime.rs +1 -1
  139. data/bridge/src/test_server.rs +153 -0
  140. data/bridge/src/worker.rs +89 -16
  141. data/lib/gen/temporal/api/command/v1/message_pb.rb +4 -18
  142. data/lib/gen/temporal/api/common/v1/message_pb.rb +4 -0
  143. data/lib/gen/temporal/api/enums/v1/command_type_pb.rb +1 -3
  144. data/lib/gen/temporal/api/enums/v1/event_type_pb.rb +3 -3
  145. data/lib/gen/temporal/api/enums/v1/failed_cause_pb.rb +2 -0
  146. data/lib/gen/temporal/api/enums/v1/update_pb.rb +6 -4
  147. data/lib/gen/temporal/api/history/v1/message_pb.rb +27 -19
  148. data/lib/gen/temporal/api/namespace/v1/message_pb.rb +1 -0
  149. data/lib/gen/temporal/api/operatorservice/v1/request_response_pb.rb +3 -0
  150. data/lib/gen/temporal/api/protocol/v1/message_pb.rb +30 -0
  151. data/lib/gen/temporal/api/sdk/v1/task_complete_metadata_pb.rb +23 -0
  152. data/lib/gen/temporal/api/testservice/v1/request_response_pb.rb +49 -0
  153. data/lib/gen/temporal/api/testservice/v1/service_pb.rb +21 -0
  154. data/lib/gen/temporal/api/update/v1/message_pb.rb +72 -0
  155. data/lib/gen/temporal/api/workflowservice/v1/request_response_pb.rb +26 -16
  156. data/lib/gen/temporal/sdk/core/activity_result/activity_result_pb.rb +13 -9
  157. data/lib/gen/temporal/sdk/core/activity_task/activity_task_pb.rb +10 -6
  158. data/lib/gen/temporal/sdk/core/child_workflow/child_workflow_pb.rb +13 -9
  159. data/lib/gen/temporal/sdk/core/common/common_pb.rb +7 -3
  160. data/lib/gen/temporal/sdk/core/core_interface_pb.rb +9 -3
  161. data/lib/gen/temporal/sdk/core/external_data/external_data_pb.rb +7 -3
  162. data/lib/gen/temporal/sdk/core/workflow_activation/workflow_activation_pb.rb +27 -21
  163. data/lib/gen/temporal/sdk/core/workflow_commands/workflow_commands_pb.rb +28 -24
  164. data/lib/gen/temporal/sdk/core/workflow_completion/workflow_completion_pb.rb +12 -5
  165. data/lib/temporalio/activity/context.rb +13 -8
  166. data/lib/temporalio/activity/info.rb +1 -1
  167. data/lib/temporalio/bridge/connect_options.rb +15 -0
  168. data/lib/temporalio/bridge/retry_config.rb +24 -0
  169. data/lib/temporalio/bridge/tls_options.rb +19 -0
  170. data/lib/temporalio/bridge.rb +1 -1
  171. data/lib/temporalio/client/implementation.rb +8 -8
  172. data/lib/temporalio/connection/retry_config.rb +44 -0
  173. data/lib/temporalio/connection/service.rb +20 -0
  174. data/lib/temporalio/connection/test_service.rb +92 -0
  175. data/lib/temporalio/connection/tls_options.rb +51 -0
  176. data/lib/temporalio/connection/workflow_service.rb +731 -0
  177. data/lib/temporalio/connection.rb +55 -720
  178. data/lib/temporalio/interceptor/activity_inbound.rb +22 -0
  179. data/lib/temporalio/interceptor/activity_outbound.rb +24 -0
  180. data/lib/temporalio/interceptor/chain.rb +5 -5
  181. data/lib/temporalio/interceptor/client.rb +8 -4
  182. data/lib/temporalio/interceptor.rb +22 -0
  183. data/lib/temporalio/retry_policy.rb +13 -3
  184. data/lib/temporalio/testing/time_skipping_handle.rb +32 -0
  185. data/lib/temporalio/testing/time_skipping_interceptor.rb +23 -0
  186. data/lib/temporalio/testing/workflow_environment.rb +112 -0
  187. data/lib/temporalio/testing.rb +175 -0
  188. data/lib/temporalio/version.rb +1 -1
  189. data/lib/temporalio/worker/activity_runner.rb +26 -4
  190. data/lib/temporalio/worker/activity_worker.rb +44 -18
  191. data/lib/temporalio/worker/sync_worker.rb +47 -11
  192. data/lib/temporalio/worker.rb +27 -21
  193. data/lib/temporalio/workflow/async.rb +46 -0
  194. data/lib/temporalio/workflow/future.rb +138 -0
  195. data/lib/temporalio/workflow/info.rb +76 -0
  196. data/lib/thermite_patch.rb +10 -0
  197. data/sig/async.rbs +17 -0
  198. data/sig/protobuf.rbs +16 -0
  199. data/sig/protos/dependencies/gogoproto/gogo.rbs +914 -0
  200. data/sig/protos/google/protobuf/any.rbs +157 -0
  201. data/sig/protos/google/protobuf/descriptor.rbs +2825 -0
  202. data/sig/protos/google/protobuf/duration.rbs +114 -0
  203. data/sig/protos/google/protobuf/empty.rbs +36 -0
  204. data/sig/protos/google/protobuf/timestamp.rbs +145 -0
  205. data/sig/protos/google/protobuf/wrappers.rbs +358 -0
  206. data/sig/protos/temporal/api/batch/v1/message.rbs +300 -0
  207. data/sig/protos/temporal/api/command/v1/message.rbs +1399 -0
  208. data/sig/protos/temporal/api/common/v1/message.rbs +528 -0
  209. data/sig/protos/temporal/api/enums/v1/batch_operation.rbs +79 -0
  210. data/sig/protos/temporal/api/enums/v1/command_type.rbs +68 -0
  211. data/sig/protos/temporal/api/enums/v1/common.rbs +118 -0
  212. data/sig/protos/temporal/api/enums/v1/event_type.rbs +264 -0
  213. data/sig/protos/temporal/api/enums/v1/failed_cause.rbs +277 -0
  214. data/sig/protos/temporal/api/enums/v1/namespace.rbs +108 -0
  215. data/sig/protos/temporal/api/enums/v1/query.rbs +81 -0
  216. data/sig/protos/temporal/api/enums/v1/reset.rbs +44 -0
  217. data/sig/protos/temporal/api/enums/v1/schedule.rbs +72 -0
  218. data/sig/protos/temporal/api/enums/v1/task_queue.rbs +92 -0
  219. data/sig/protos/temporal/api/enums/v1/update.rbs +64 -0
  220. data/sig/protos/temporal/api/enums/v1/workflow.rbs +371 -0
  221. data/sig/protos/temporal/api/errordetails/v1/message.rbs +551 -0
  222. data/sig/protos/temporal/api/failure/v1/message.rbs +581 -0
  223. data/sig/protos/temporal/api/filter/v1/message.rbs +171 -0
  224. data/sig/protos/temporal/api/history/v1/message.rbs +4609 -0
  225. data/sig/protos/temporal/api/namespace/v1/message.rbs +410 -0
  226. data/sig/protos/temporal/api/operatorservice/v1/request_response.rbs +643 -0
  227. data/sig/protos/temporal/api/operatorservice/v1/service.rbs +17 -0
  228. data/sig/protos/temporal/api/protocol/v1/message.rbs +84 -0
  229. data/sig/protos/temporal/api/query/v1/message.rbs +182 -0
  230. data/sig/protos/temporal/api/replication/v1/message.rbs +148 -0
  231. data/sig/protos/temporal/api/schedule/v1/message.rbs +1488 -0
  232. data/sig/protos/temporal/api/sdk/v1/task_complete_metadata.rbs +110 -0
  233. data/sig/protos/temporal/api/taskqueue/v1/message.rbs +486 -0
  234. data/sig/protos/temporal/api/testservice/v1/request_response.rbs +249 -0
  235. data/sig/protos/temporal/api/testservice/v1/service.rbs +15 -0
  236. data/sig/protos/temporal/api/update/v1/message.rbs +489 -0
  237. data/sig/protos/temporal/api/version/v1/message.rbs +184 -0
  238. data/sig/protos/temporal/api/workflow/v1/message.rbs +824 -0
  239. data/sig/protos/temporal/api/workflowservice/v1/request_response.rbs +7250 -0
  240. data/sig/protos/temporal/api/workflowservice/v1/service.rbs +22 -0
  241. data/sig/protos/temporal/sdk/core/activity_result/activity_result.rbs +380 -0
  242. data/sig/protos/temporal/sdk/core/activity_task/activity_task.rbs +386 -0
  243. data/sig/protos/temporal/sdk/core/child_workflow/child_workflow.rbs +323 -0
  244. data/sig/protos/temporal/sdk/core/common/common.rbs +62 -0
  245. data/sig/protos/temporal/sdk/core/core_interface.rbs +101 -0
  246. data/sig/protos/temporal/sdk/core/external_data/external_data.rbs +119 -0
  247. data/sig/protos/temporal/sdk/core/workflow_activation/workflow_activation.rbs +1473 -0
  248. data/sig/protos/temporal/sdk/core/workflow_commands/workflow_commands.rbs +1784 -0
  249. data/sig/protos/temporal/sdk/core/workflow_completion/workflow_completion.rbs +180 -0
  250. data/sig/ruby.rbs +12 -0
  251. data/sig/temporalio/activity/context.rbs +29 -0
  252. data/sig/temporalio/activity/info.rbs +43 -0
  253. data/sig/temporalio/activity.rbs +19 -0
  254. data/sig/temporalio/bridge/connect_options.rbs +19 -0
  255. data/sig/temporalio/bridge/error.rbs +8 -0
  256. data/sig/temporalio/bridge/retry_config.rbs +21 -0
  257. data/sig/temporalio/bridge/tls_options.rbs +17 -0
  258. data/sig/temporalio/bridge.rbs +71 -0
  259. data/sig/temporalio/client/implementation.rbs +38 -0
  260. data/sig/temporalio/client/workflow_handle.rbs +41 -0
  261. data/sig/temporalio/client.rbs +35 -0
  262. data/sig/temporalio/connection/retry_config.rbs +37 -0
  263. data/sig/temporalio/connection/service.rbs +14 -0
  264. data/sig/temporalio/connection/test_service.rbs +13 -0
  265. data/sig/temporalio/connection/tls_options.rbs +43 -0
  266. data/sig/temporalio/connection/workflow_service.rbs +48 -0
  267. data/sig/temporalio/connection.rbs +30 -0
  268. data/sig/temporalio/data_converter.rbs +35 -0
  269. data/sig/temporalio/error/failure.rbs +121 -0
  270. data/sig/temporalio/error/workflow_failure.rbs +9 -0
  271. data/sig/temporalio/errors.rbs +36 -0
  272. data/sig/temporalio/failure_converter/base.rbs +12 -0
  273. data/sig/temporalio/failure_converter/basic.rbs +86 -0
  274. data/sig/temporalio/failure_converter.rbs +5 -0
  275. data/sig/temporalio/interceptor/activity_inbound.rbs +21 -0
  276. data/sig/temporalio/interceptor/activity_outbound.rbs +10 -0
  277. data/sig/temporalio/interceptor/chain.rbs +24 -0
  278. data/sig/temporalio/interceptor/client.rbs +148 -0
  279. data/sig/temporalio/interceptor.rbs +6 -0
  280. data/sig/temporalio/payload_codec/base.rbs +12 -0
  281. data/sig/temporalio/payload_converter/base.rbs +12 -0
  282. data/sig/temporalio/payload_converter/bytes.rbs +9 -0
  283. data/sig/temporalio/payload_converter/composite.rbs +19 -0
  284. data/sig/temporalio/payload_converter/encoding_base.rbs +14 -0
  285. data/sig/temporalio/payload_converter/json.rbs +9 -0
  286. data/sig/temporalio/payload_converter/nil.rbs +9 -0
  287. data/sig/temporalio/payload_converter.rbs +5 -0
  288. data/sig/temporalio/retry_policy.rbs +25 -0
  289. data/sig/temporalio/retry_state.rbs +20 -0
  290. data/sig/temporalio/runtime.rbs +12 -0
  291. data/sig/temporalio/testing/time_skipping_handle.rbs +15 -0
  292. data/sig/temporalio/testing/time_skipping_interceptor.rbs +13 -0
  293. data/sig/temporalio/testing/workflow_environment.rbs +22 -0
  294. data/sig/temporalio/testing.rbs +35 -0
  295. data/sig/temporalio/timeout_type.rbs +15 -0
  296. data/sig/temporalio/version.rbs +3 -0
  297. data/sig/temporalio/worker/activity_runner.rbs +35 -0
  298. data/sig/temporalio/worker/activity_worker.rbs +44 -0
  299. data/sig/temporalio/worker/reactor.rbs +22 -0
  300. data/sig/temporalio/worker/runner.rbs +21 -0
  301. data/sig/temporalio/worker/sync_worker.rbs +23 -0
  302. data/sig/temporalio/worker/thread_pool_executor.rbs +23 -0
  303. data/sig/temporalio/worker.rbs +46 -0
  304. data/sig/temporalio/workflow/async.rbs +9 -0
  305. data/sig/temporalio/workflow/execution_info.rbs +55 -0
  306. data/sig/temporalio/workflow/execution_status.rbs +21 -0
  307. data/sig/temporalio/workflow/future.rbs +40 -0
  308. data/sig/temporalio/workflow/id_reuse_policy.rbs +15 -0
  309. data/sig/temporalio/workflow/info.rbs +55 -0
  310. data/sig/temporalio/workflow/query_reject_condition.rbs +14 -0
  311. data/sig/temporalio.rbs +2 -0
  312. data/sig/thermite_patch.rbs +15 -0
  313. data/temporalio.gemspec +6 -4
  314. metadata +183 -17
  315. data/bridge/sdk-core/Cargo.lock +0 -2606
  316. data/bridge/sdk-core/protos/api_upstream/temporal/api/interaction/v1/message.proto +0 -87
  317. data/lib/bridge.so +0 -0
  318. data/lib/gen/temporal/api/enums/v1/interaction_type_pb.rb +0 -25
  319. data/lib/gen/temporal/api/interaction/v1/message_pb.rb +0 -49
  320. data/lib/gen/temporal/sdk/core/bridge/bridge_pb.rb +0 -222
@@ -0,0 +1,410 @@
1
+ module Temporalio
2
+ module Api
3
+ module Namespace
4
+ module V1
5
+ class NamespaceInfo < ::Protobuf::Message
6
+ # Encode the message to a binary string
7
+ #
8
+ def self.encode: (NamespaceInfo) -> String
9
+
10
+ attr_accessor name(): ::String
11
+
12
+ def name!: () -> ::String?
13
+
14
+ attr_accessor state(): ::Temporalio::Api::Enums::V1::NamespaceState
15
+
16
+ def state=: (::Temporalio::Api::Enums::V1::NamespaceState::values) -> ::Temporalio::Api::Enums::V1::NamespaceState::values
17
+ | ...
18
+
19
+ def state!: () -> ::Temporalio::Api::Enums::V1::NamespaceState?
20
+
21
+ attr_accessor description(): ::String
22
+
23
+ def description!: () -> ::String?
24
+
25
+ attr_accessor owner_email(): ::String
26
+
27
+ def owner_email!: () -> ::String?
28
+
29
+ # A key-value map for any customized purpose.
30
+ #
31
+ attr_accessor data(): ::Protobuf::field_hash[::String, ::String]
32
+
33
+ # A key-value map for any customized purpose.
34
+ #
35
+ def data=: (::Hash[::String, ::String]) -> ::Hash[::String, ::String]
36
+ | ...
37
+
38
+ def data!: () -> ::Protobuf::field_hash[::String, ::String]?
39
+
40
+ attr_accessor id(): ::String
41
+
42
+ def id!: () -> ::String?
43
+
44
+ # Whether scheduled workflows are supported on this namespace. This is only needed
45
+ # temporarily while the feature is experimental, so we can give it a high tag.
46
+ #
47
+ attr_accessor supports_schedules(): bool
48
+
49
+ def supports_schedules!: () -> bool?
50
+
51
+ def initialize: (?name: ::String, ?state: ::Temporalio::Api::Enums::V1::NamespaceState::init, ?description: ::String, ?owner_email: ::String, ?data: ::Hash[::String, ::String], ?id: ::String, ?supports_schedules: bool) -> void
52
+
53
+ def []: (:name) -> ::String
54
+ | (:state) -> ::Temporalio::Api::Enums::V1::NamespaceState
55
+ | (:description) -> ::String
56
+ | (:owner_email) -> ::String
57
+ | (:data) -> ::Protobuf::field_hash[::String, ::String]
58
+ | (:id) -> ::String
59
+ | (:supports_schedules) -> bool
60
+ | (::Symbol) -> untyped
61
+
62
+ def []=: (:name, ::String) -> ::String
63
+ | (:state, ::Temporalio::Api::Enums::V1::NamespaceState) -> ::Temporalio::Api::Enums::V1::NamespaceState
64
+ | (:state, ::Temporalio::Api::Enums::V1::NamespaceState::values) -> ::Temporalio::Api::Enums::V1::NamespaceState::values
65
+ | (:description, ::String) -> ::String
66
+ | (:owner_email, ::String) -> ::String
67
+ | (:data, ::Protobuf::field_hash[::String, ::String]) -> ::Protobuf::field_hash[::String, ::String]
68
+ | (:data, ::Hash[::String, ::String]) -> ::Hash[::String, ::String]
69
+ | (:id, ::String) -> ::String
70
+ | (:supports_schedules, bool) -> bool
71
+ | (::Symbol, untyped) -> untyped
72
+
73
+ def supports_schedules?: () -> bool
74
+
75
+ interface _ToProto
76
+ def to_proto: () -> NamespaceInfo
77
+ end
78
+
79
+ # The type of `#initialize` parameter.
80
+ type init = NamespaceInfo | _ToProto
81
+
82
+ # The type of `repeated` field.
83
+ type field_array = ::Protobuf::Field::FieldArray[NamespaceInfo, NamespaceInfo | _ToProto]
84
+
85
+ # The type of `map` field.
86
+ type field_hash[KEY] = ::Protobuf::Field::FieldHash[KEY, NamespaceInfo, NamespaceInfo | _ToProto]
87
+
88
+ type array = ::Array[NamespaceInfo | _ToProto]
89
+
90
+ type hash[KEY] = ::Hash[KEY, NamespaceInfo | _ToProto]
91
+ end
92
+
93
+ class NamespaceConfig < ::Protobuf::Message
94
+ # Encode the message to a binary string
95
+ #
96
+ def self.encode: (NamespaceConfig) -> String
97
+
98
+ attr_accessor workflow_execution_retention_ttl(): ::Google::Protobuf::Duration?
99
+
100
+ def workflow_execution_retention_ttl=: [M < ::Google::Protobuf::Duration::_ToProto] (M?) -> M?
101
+ | ...
102
+
103
+ def workflow_execution_retention_ttl!: () -> ::Google::Protobuf::Duration?
104
+
105
+ attr_accessor bad_binaries(): ::Temporalio::Api::Namespace::V1::BadBinaries?
106
+
107
+ def bad_binaries=: [M < ::Temporalio::Api::Namespace::V1::BadBinaries::_ToProto] (M?) -> M?
108
+ | ...
109
+
110
+ def bad_binaries!: () -> ::Temporalio::Api::Namespace::V1::BadBinaries?
111
+
112
+ # If unspecified (ARCHIVAL_STATE_UNSPECIFIED) then default server configuration is used.
113
+ #
114
+ attr_accessor history_archival_state(): ::Temporalio::Api::Enums::V1::ArchivalState
115
+
116
+ # If unspecified (ARCHIVAL_STATE_UNSPECIFIED) then default server configuration is used.
117
+ #
118
+ def history_archival_state=: (::Temporalio::Api::Enums::V1::ArchivalState::values) -> ::Temporalio::Api::Enums::V1::ArchivalState::values
119
+ | ...
120
+
121
+ def history_archival_state!: () -> ::Temporalio::Api::Enums::V1::ArchivalState?
122
+
123
+ attr_accessor history_archival_uri(): ::String
124
+
125
+ def history_archival_uri!: () -> ::String?
126
+
127
+ # If unspecified (ARCHIVAL_STATE_UNSPECIFIED) then default server configuration is used.
128
+ #
129
+ attr_accessor visibility_archival_state(): ::Temporalio::Api::Enums::V1::ArchivalState
130
+
131
+ # If unspecified (ARCHIVAL_STATE_UNSPECIFIED) then default server configuration is used.
132
+ #
133
+ def visibility_archival_state=: (::Temporalio::Api::Enums::V1::ArchivalState::values) -> ::Temporalio::Api::Enums::V1::ArchivalState::values
134
+ | ...
135
+
136
+ def visibility_archival_state!: () -> ::Temporalio::Api::Enums::V1::ArchivalState?
137
+
138
+ attr_accessor visibility_archival_uri(): ::String
139
+
140
+ def visibility_archival_uri!: () -> ::String?
141
+
142
+ # Map from field name to alias.
143
+ #
144
+ attr_accessor custom_search_attribute_aliases(): ::Protobuf::field_hash[::String, ::String]
145
+
146
+ # Map from field name to alias.
147
+ #
148
+ def custom_search_attribute_aliases=: (::Hash[::String, ::String]) -> ::Hash[::String, ::String]
149
+ | ...
150
+
151
+ def custom_search_attribute_aliases!: () -> ::Protobuf::field_hash[::String, ::String]?
152
+
153
+ def initialize: (?workflow_execution_retention_ttl: ::Google::Protobuf::Duration::init?, ?bad_binaries: ::Temporalio::Api::Namespace::V1::BadBinaries::init?, ?history_archival_state: ::Temporalio::Api::Enums::V1::ArchivalState::init, ?history_archival_uri: ::String, ?visibility_archival_state: ::Temporalio::Api::Enums::V1::ArchivalState::init, ?visibility_archival_uri: ::String, ?custom_search_attribute_aliases: ::Hash[::String, ::String]) -> void
154
+
155
+ def []: (:workflow_execution_retention_ttl) -> ::Google::Protobuf::Duration?
156
+ | (:bad_binaries) -> ::Temporalio::Api::Namespace::V1::BadBinaries?
157
+ | (:history_archival_state) -> ::Temporalio::Api::Enums::V1::ArchivalState
158
+ | (:history_archival_uri) -> ::String
159
+ | (:visibility_archival_state) -> ::Temporalio::Api::Enums::V1::ArchivalState
160
+ | (:visibility_archival_uri) -> ::String
161
+ | (:custom_search_attribute_aliases) -> ::Protobuf::field_hash[::String, ::String]
162
+ | (::Symbol) -> untyped
163
+
164
+ def []=: (:workflow_execution_retention_ttl, ::Google::Protobuf::Duration?) -> ::Google::Protobuf::Duration?
165
+ | [M < ::Google::Protobuf::Duration::_ToProto] (:workflow_execution_retention_ttl, M?) -> M?
166
+ | (:bad_binaries, ::Temporalio::Api::Namespace::V1::BadBinaries?) -> ::Temporalio::Api::Namespace::V1::BadBinaries?
167
+ | [M < ::Temporalio::Api::Namespace::V1::BadBinaries::_ToProto] (:bad_binaries, M?) -> M?
168
+ | (:history_archival_state, ::Temporalio::Api::Enums::V1::ArchivalState) -> ::Temporalio::Api::Enums::V1::ArchivalState
169
+ | (:history_archival_state, ::Temporalio::Api::Enums::V1::ArchivalState::values) -> ::Temporalio::Api::Enums::V1::ArchivalState::values
170
+ | (:history_archival_uri, ::String) -> ::String
171
+ | (:visibility_archival_state, ::Temporalio::Api::Enums::V1::ArchivalState) -> ::Temporalio::Api::Enums::V1::ArchivalState
172
+ | (:visibility_archival_state, ::Temporalio::Api::Enums::V1::ArchivalState::values) -> ::Temporalio::Api::Enums::V1::ArchivalState::values
173
+ | (:visibility_archival_uri, ::String) -> ::String
174
+ | (:custom_search_attribute_aliases, ::Protobuf::field_hash[::String, ::String]) -> ::Protobuf::field_hash[::String, ::String]
175
+ | (:custom_search_attribute_aliases, ::Hash[::String, ::String]) -> ::Hash[::String, ::String]
176
+ | (::Symbol, untyped) -> untyped
177
+
178
+ interface _ToProto
179
+ def to_proto: () -> NamespaceConfig
180
+ end
181
+
182
+ # The type of `#initialize` parameter.
183
+ type init = NamespaceConfig | _ToProto
184
+
185
+ # The type of `repeated` field.
186
+ type field_array = ::Protobuf::Field::FieldArray[NamespaceConfig, NamespaceConfig | _ToProto]
187
+
188
+ # The type of `map` field.
189
+ type field_hash[KEY] = ::Protobuf::Field::FieldHash[KEY, NamespaceConfig, NamespaceConfig | _ToProto]
190
+
191
+ type array = ::Array[NamespaceConfig | _ToProto]
192
+
193
+ type hash[KEY] = ::Hash[KEY, NamespaceConfig | _ToProto]
194
+ end
195
+
196
+ class BadBinaries < ::Protobuf::Message
197
+ # Encode the message to a binary string
198
+ #
199
+ def self.encode: (BadBinaries) -> String
200
+
201
+ attr_accessor binaries(): ::Temporalio::Api::Namespace::V1::BadBinaryInfo::field_hash[::String]
202
+
203
+ def binaries=: (::Temporalio::Api::Namespace::V1::BadBinaryInfo::hash[::String]) -> ::Temporalio::Api::Namespace::V1::BadBinaryInfo::hash[::String]
204
+ | ...
205
+
206
+ def binaries!: () -> ::Temporalio::Api::Namespace::V1::BadBinaryInfo::field_hash[::String]?
207
+
208
+ def initialize: (?binaries: ::Temporalio::Api::Namespace::V1::BadBinaryInfo::hash[::String]) -> void
209
+
210
+ def []: (:binaries) -> ::Temporalio::Api::Namespace::V1::BadBinaryInfo::field_hash[::String]
211
+ | (::Symbol) -> untyped
212
+
213
+ def []=: (:binaries, ::Temporalio::Api::Namespace::V1::BadBinaryInfo::field_hash[::String]) -> ::Temporalio::Api::Namespace::V1::BadBinaryInfo::field_hash[::String]
214
+ | (:binaries, ::Temporalio::Api::Namespace::V1::BadBinaryInfo::hash[::String]) -> ::Temporalio::Api::Namespace::V1::BadBinaryInfo::hash[::String]
215
+ | (::Symbol, untyped) -> untyped
216
+
217
+ interface _ToProto
218
+ def to_proto: () -> BadBinaries
219
+ end
220
+
221
+ # The type of `#initialize` parameter.
222
+ type init = BadBinaries | _ToProto
223
+
224
+ # The type of `repeated` field.
225
+ type field_array = ::Protobuf::Field::FieldArray[BadBinaries, BadBinaries | _ToProto]
226
+
227
+ # The type of `map` field.
228
+ type field_hash[KEY] = ::Protobuf::Field::FieldHash[KEY, BadBinaries, BadBinaries | _ToProto]
229
+
230
+ type array = ::Array[BadBinaries | _ToProto]
231
+
232
+ type hash[KEY] = ::Hash[KEY, BadBinaries | _ToProto]
233
+ end
234
+
235
+ class BadBinaryInfo < ::Protobuf::Message
236
+ # Encode the message to a binary string
237
+ #
238
+ def self.encode: (BadBinaryInfo) -> String
239
+
240
+ attr_accessor reason(): ::String
241
+
242
+ def reason!: () -> ::String?
243
+
244
+ attr_accessor operator(): ::String
245
+
246
+ def operator!: () -> ::String?
247
+
248
+ attr_accessor create_time(): ::Google::Protobuf::Timestamp?
249
+
250
+ def create_time=: [M < ::Google::Protobuf::Timestamp::_ToProto] (M?) -> M?
251
+ | ...
252
+
253
+ def create_time!: () -> ::Google::Protobuf::Timestamp?
254
+
255
+ def initialize: (?reason: ::String, ?operator: ::String, ?create_time: ::Google::Protobuf::Timestamp::init?) -> void
256
+
257
+ def []: (:reason) -> ::String
258
+ | (:operator) -> ::String
259
+ | (:create_time) -> ::Google::Protobuf::Timestamp?
260
+ | (::Symbol) -> untyped
261
+
262
+ def []=: (:reason, ::String) -> ::String
263
+ | (:operator, ::String) -> ::String
264
+ | (:create_time, ::Google::Protobuf::Timestamp?) -> ::Google::Protobuf::Timestamp?
265
+ | [M < ::Google::Protobuf::Timestamp::_ToProto] (:create_time, M?) -> M?
266
+ | (::Symbol, untyped) -> untyped
267
+
268
+ interface _ToProto
269
+ def to_proto: () -> BadBinaryInfo
270
+ end
271
+
272
+ # The type of `#initialize` parameter.
273
+ type init = BadBinaryInfo | _ToProto
274
+
275
+ # The type of `repeated` field.
276
+ type field_array = ::Protobuf::Field::FieldArray[BadBinaryInfo, BadBinaryInfo | _ToProto]
277
+
278
+ # The type of `map` field.
279
+ type field_hash[KEY] = ::Protobuf::Field::FieldHash[KEY, BadBinaryInfo, BadBinaryInfo | _ToProto]
280
+
281
+ type array = ::Array[BadBinaryInfo | _ToProto]
282
+
283
+ type hash[KEY] = ::Hash[KEY, BadBinaryInfo | _ToProto]
284
+ end
285
+
286
+ class UpdateNamespaceInfo < ::Protobuf::Message
287
+ # Encode the message to a binary string
288
+ #
289
+ def self.encode: (UpdateNamespaceInfo) -> String
290
+
291
+ attr_accessor description(): ::String
292
+
293
+ def description!: () -> ::String?
294
+
295
+ attr_accessor owner_email(): ::String
296
+
297
+ def owner_email!: () -> ::String?
298
+
299
+ # A key-value map for any customized purpose.
300
+ # If data already exists on the namespace,
301
+ # this will merge with the existing key values.
302
+ #
303
+ attr_accessor data(): ::Protobuf::field_hash[::String, ::String]
304
+
305
+ # A key-value map for any customized purpose.
306
+ # If data already exists on the namespace,
307
+ # this will merge with the existing key values.
308
+ #
309
+ def data=: (::Hash[::String, ::String]) -> ::Hash[::String, ::String]
310
+ | ...
311
+
312
+ def data!: () -> ::Protobuf::field_hash[::String, ::String]?
313
+
314
+ # New namespace state, server will reject if transition is not allowed.
315
+ # Allowed transitions are:
316
+ # Registered -> [ Deleted | Deprecated | Handover ]
317
+ # Handover -> [ Registered ]
318
+ # Default is NAMESPACE_STATE_UNSPECIFIED which is do not change state.
319
+ #
320
+ attr_accessor state(): ::Temporalio::Api::Enums::V1::NamespaceState
321
+
322
+ # New namespace state, server will reject if transition is not allowed.
323
+ # Allowed transitions are:
324
+ # Registered -> [ Deleted | Deprecated | Handover ]
325
+ # Handover -> [ Registered ]
326
+ # Default is NAMESPACE_STATE_UNSPECIFIED which is do not change state.
327
+ #
328
+ def state=: (::Temporalio::Api::Enums::V1::NamespaceState::values) -> ::Temporalio::Api::Enums::V1::NamespaceState::values
329
+ | ...
330
+
331
+ def state!: () -> ::Temporalio::Api::Enums::V1::NamespaceState?
332
+
333
+ def initialize: (?description: ::String, ?owner_email: ::String, ?data: ::Hash[::String, ::String], ?state: ::Temporalio::Api::Enums::V1::NamespaceState::init) -> void
334
+
335
+ def []: (:description) -> ::String
336
+ | (:owner_email) -> ::String
337
+ | (:data) -> ::Protobuf::field_hash[::String, ::String]
338
+ | (:state) -> ::Temporalio::Api::Enums::V1::NamespaceState
339
+ | (::Symbol) -> untyped
340
+
341
+ def []=: (:description, ::String) -> ::String
342
+ | (:owner_email, ::String) -> ::String
343
+ | (:data, ::Protobuf::field_hash[::String, ::String]) -> ::Protobuf::field_hash[::String, ::String]
344
+ | (:data, ::Hash[::String, ::String]) -> ::Hash[::String, ::String]
345
+ | (:state, ::Temporalio::Api::Enums::V1::NamespaceState) -> ::Temporalio::Api::Enums::V1::NamespaceState
346
+ | (:state, ::Temporalio::Api::Enums::V1::NamespaceState::values) -> ::Temporalio::Api::Enums::V1::NamespaceState::values
347
+ | (::Symbol, untyped) -> untyped
348
+
349
+ interface _ToProto
350
+ def to_proto: () -> UpdateNamespaceInfo
351
+ end
352
+
353
+ # The type of `#initialize` parameter.
354
+ type init = UpdateNamespaceInfo | _ToProto
355
+
356
+ # The type of `repeated` field.
357
+ type field_array = ::Protobuf::Field::FieldArray[UpdateNamespaceInfo, UpdateNamespaceInfo | _ToProto]
358
+
359
+ # The type of `map` field.
360
+ type field_hash[KEY] = ::Protobuf::Field::FieldHash[KEY, UpdateNamespaceInfo, UpdateNamespaceInfo | _ToProto]
361
+
362
+ type array = ::Array[UpdateNamespaceInfo | _ToProto]
363
+
364
+ type hash[KEY] = ::Hash[KEY, UpdateNamespaceInfo | _ToProto]
365
+ end
366
+
367
+ class NamespaceFilter < ::Protobuf::Message
368
+ # Encode the message to a binary string
369
+ #
370
+ def self.encode: (NamespaceFilter) -> String
371
+
372
+ # By default namespaces in NAMESPACE_STATE_DELETED state are not included.
373
+ # Setting include_deleted to true will include deleted namespaces.
374
+ # Note: Namespace is in NAMESPACE_STATE_DELETED state when it was deleted from the system but associated data is not deleted yet.
375
+ #
376
+ attr_accessor include_deleted(): bool
377
+
378
+ def include_deleted!: () -> bool?
379
+
380
+ def initialize: (?include_deleted: bool) -> void
381
+
382
+ def []: (:include_deleted) -> bool
383
+ | (::Symbol) -> untyped
384
+
385
+ def []=: (:include_deleted, bool) -> bool
386
+ | (::Symbol, untyped) -> untyped
387
+
388
+ def include_deleted?: () -> bool
389
+
390
+ interface _ToProto
391
+ def to_proto: () -> NamespaceFilter
392
+ end
393
+
394
+ # The type of `#initialize` parameter.
395
+ type init = NamespaceFilter | _ToProto
396
+
397
+ # The type of `repeated` field.
398
+ type field_array = ::Protobuf::Field::FieldArray[NamespaceFilter, NamespaceFilter | _ToProto]
399
+
400
+ # The type of `map` field.
401
+ type field_hash[KEY] = ::Protobuf::Field::FieldHash[KEY, NamespaceFilter, NamespaceFilter | _ToProto]
402
+
403
+ type array = ::Array[NamespaceFilter | _ToProto]
404
+
405
+ type hash[KEY] = ::Hash[KEY, NamespaceFilter | _ToProto]
406
+ end
407
+ end
408
+ end
409
+ end
410
+ end